FSO File クラスのメソッドによるファイルのコピー・移動・削除

このコードは、FileSystemObject (FSO) を使用して、特定のファイルをコピー、移動、および削除する方法を示しています。

' FSO File クラスのメソッドによるファイルのコピー・移動・削除
Private Sub FSO_FileClass_Copy_Move_Delete()
    ' 参照設定「Microsoft Scripting Runtime」必要
    With New FileSystemObject
    ' 以下は、参照設定有無にかかわらず使用可
    'With CreateObject("Scripting.FileSystemObject")
        
        ' コピーおよび移動先のフォルダパスを指定します
        Dim myDestination As String
        myDestination = "C:\TEMP\コピー移動先\"
        
        ' 「C:\TEMP」フォルダを取得して操作を行います
        With .GetFolder("C:\TEMP")
            ' 「hoge」フォルダを指定のコピー先にコピーします
            .Files("hoge.txt").Copy myDestination
            ' 「fuga」フォルダを指定の移動先に移動します
            .Files("fuga.txt").Move myDestination
            ' 「piyo」フォルダを削除します
            .Files("piyo.txt").Delete
        End With
    End With
End Sub

コードの概要

FSO_FileClass_Copy_Move_Delete というサブプロシージャは、FSO を使用して指定されたファイルをコピー、移動、および削除する操作を実行します。

コードの詳細

  1. FileSystemObject の作成:With New FileSystemObject
    ここで FileSystemObject のインスタンスを作成しています。このオブジェクトを使用してファイルシステムにアクセスします。なお、コメントアウトされている CreateObject の部分は参照設定がない場合に使用できます。
  2. コピーおよび移動先のフォルダパスを指定:Dim myDestination As String
    myDestination = "C:\TEMP\コピー移動先\"
    ファイルのコピーおよび移動先のパスを指定しています。
  3. 操作対象のフォルダを取得:With .GetFolder("C:\TEMP")
    GetFolder メソッドを使用して操作対象のフォルダ (C:\TEMP) を取得します。
  4. ファイルのコピー、移動、削除の操作:
    • ファイルのコピー:.Files("hoge.txt").Copy myDestination hoge.txt
      ファイルを指定のコピー先 (C:\TEMP\コピー移動先\) にコピーします。
    • ファイルの移動:.Files("fuga.txt").Move myDestination fuga.txt
      ファイルを指定の移動先 (C:\TEMP\コピー移動先\) に移動します。
    • ファイルの削除:.Files("piyo.txt").Delete piyo.txt
      ファイルを削除します。

メソッドの説明

  • Copy:.Files("hoge.txt").Copy myDestination
    このメソッドは指定したファイルを指定したパスにコピーします。
  • Move:.Files("fuga.txt").Move myDestination
    このメソッドは指定したファイルを指定したパスに移動します。
  • Delete:.Files("piyo.txt").Delete
    このメソッドは指定したファイルを削除します。

コード全体の動作まとめ

  • FileSystemObject を使用して、指定されたフォルダ内のファイルを取得します。
  • 取得したファイルを指定されたパスにコピー、移動、または削除します。

このコードにより、ファイルの管理操作(コピー、移動、削除)を簡単に行うことができます。これにより、ファイルのバックアップや整理が容易になります。

Follow me!