Vba: ある場所から別の場所にファイルをコピーする方法


VBA のCopyFileメソッドを使用して、あるフォルダーから別のフォルダーにファイルをコピーできます。

このメソッドを実際に使用する一般的な方法は次のとおりです。

 SubCopyMyFile ()

Dim FSO As New FileSystemObject
Set FSO = CreateObject("Scripting.FileSystemObject")
    
'specify source file and destination folder
SourceFile = "C:\Users\bob\Desktop\Some_Data_1\soccer_data.txt"
DestFolder = "C:\Users\bob\Desktop\Some_Data_2\"

'copy file
FSO.CopyFile Source:=SourceFile, Destination:=DestFolder

End Sub

この特定のマクロは、 Soccer_data.txtというファイルをSome_Data_1というフォルダーからSome_Data_2というフォルダーにコピーします。

次の例は、この構文を実際に使用する方法を示しています。

例: VBA を使用してファイルをコピーする方法

デスクトップ上のSome_Data_1というフォルダーにSoccer_data.txtというテキスト ファイルがあるとします。

ここで、VBA を使用してこのテキスト ファイルをデスクトップ上のSome_Data_2という別のフォルダーにコピーするとします。このフォルダーには現在 2 つのテキスト ファイルが含まれています。

VBA を使用してこのファイルをコピーする前に、まず VB エディターでMicrosoft Scripting Runtime を有効にする必要があります。

これを行うには、VB エディターを開き、 [ツール]をクリックし、 [参照]をクリックします。

表示される新しいウィンドウで、 「Microsoft Scripting Runtime」が表示されるまで下にスクロールし、その横にあるチェックボックスをオンにします。次に、 「OK」をクリックします。

次に、次のマクロを作成してファイルをコピーします。

 SubCopyMyFile ()

Dim FSO As New FileSystemObject
Set FSO = CreateObject("Scripting.FileSystemObject")
    
'specify source file and destination folder
SourceFile = "C:\Users\bob\Desktop\Some_Data_1\soccer_data.txt"
DestFolder = "C:\Users\bob\Desktop\Some_Data_2\"

'copy file
FSO.CopyFile Source:=SourceFile, Destination:=DestFolder

End Sub

このマクロが実行されると、 soccer_data.txtという名前のファイルがSome_Data_1フォルダーからSome_Data_2フォルダーにコピーされます。

元のSoccer_data.txt ファイルSome_Data_1フォルダーに残ります。

: CopyFileメソッドの完全なドキュメントはここにあります。

追加リソース

次のチュートリアルでは、VBA で他の一般的なタスクを実行する方法について説明します。

VBA を使用してフォルダーを作成する方法
VBAを使ってフォルダを削除する方法
VBAを使用してファイルを削除する方法

コメントを追加する

メールアドレスが公開されることはありません。 が付いている欄は必須項目です