VBAでファイルをコピーする方法にはいくつかのオプションがあります。一般的にはFileCopyステートメントやFileSystemObjectのCopyFileメソッドが使用されます。
目次
FileCopyステートメントの使用例
FileCopyステートメントは、簡単にファイルをコピーするための基本的な方法です。
以下にサンプルコードを示します。
Sub SampleFileCopy()
FileCopy "C:\Path\SourceFile.txt", "C:\Path\DestinationFile.txt"
End SubこのコードはC:\Path\にあるSourceFile.txtをDestinationFile.txtとして同じパスにコピーします。
FileSystemObjectの使用
FileSystemObjectを使用すると、より高度なファイル操作が可能になります。以下にサンプルコードを示します。
Sub SampleFileSystemObjectCopy()
Dim FSO As Object
Set FSO = CreateObject("Scripting.FileSystemObject")
FSO.CopyFile "C:\Path\SourceFile.txt", "C:\Path\DestinationFile.txt", True
End SubこのコードではFileSystemObjectのCopyFileメソッドを使ってファイルをコピーしています。このメソッドでは、コピー先に同名のファイルが存在した場合の挙動(この例では上書き)を指定できます。
注意点
FileCopyステートメントやFileSystemObjectのCopyFileメソッドを使用する場合、いくつかの注意点があります。開いているファイルをコピーしようとするとエラーが発生すること、コピー元のファイルが存在しない場合にはエラーが発生すること、FileCopyは同じファイル名がコピー先にあると無条件で上書きを行うことなどが挙げられます。
これらの情報を基に、VBAでファイルをコピーする際の方法を選択してください。また、ファイル操作を行う際は、常にエラーハンドリングを考慮に入れることが重要です。