ray88’s diary

お仕事で困ったとき用の自分用の覚書

VBA ファイルシステムオブジェクト ・CopyFolder

■Sourceで表される1つまたは複数のフォルダを、Destnationで表されるフォルダにコピーする。OverWriteFilesはファイルを上書きするかを表すブール値を指定する。

Sub CopyFolder(Source As String,Destination As String,[OverWriteFiles As Boolean = True])

VBA FileSystemObjectの主なプロパティとメソッド - ray88’s diary
VBA FileSystemObject(ファイルシステムオブジェクト)事前バインディングと実行時バインディング - ray88’s diary
■サンプルコード

Sub Test()
    Dim FSO As Object
    Dim MyPath As String    
    'ファイルシステムオブジェクトをインスタンス化
    Set FSO = CreateObject("Scripting.FileSystemObject")    
    MyPath = "C:\Users\デスクトップ\ExcelVBAプロジェクト\FSOテスト"        
    '既に同名フォルダが存在しているかチェック
    If Not FSO.FolderExists(MyPath & "\02") Then
        'フォルダをコピー
        FSO.CopyFolder MyPath & "\01", MyPath & "\02"
    End If    
    Set FSO = Nothing
End Sub