【VBA】フォルダを移動する

フォルダを移動する方法を
記載します!

移動時にエラーが発生しないように、
気を付けるべき点も記載します!

PR

VBAコード

ここでは例として、
 ・デスクトップ配下のフォルダ「folder01」を移動
させます。

Option Explicit

Sub sample()
    
    Dim fso As Object
    Dim folderFullPath As String
    Dim newFolderFullPath As String
    
    '移動させるフォルダのパスを指定
    folderFullPath = "C:\Users\user\Desktop\folder01"
    
    '移動先のフォルダパスを指定
    newFolderFullPath = "C:\Users\user\Desktop\temp\"
    
    Set fso = CreateObject("Scripting.FileSystemObject")
    
    'フォルダを移動
    Call fso.MoveFolder(folderFullPath, newFolderFullPath)
    
    '後片付け
    Set fso = Nothing
    
End Sub

「FileSystemObject」の「MoveFolder」メソッドでフォルダを移動できます。

「移動先のフォルダパス」は最後に「\」を付けてください。
付け忘れると以下のエラーとなります。

エラーメッセージ
エラーメッセージ

※エラーメッセージからエラー理由(\の付け忘れ)を推測することは難しいです。付け忘れに気を付けましょう。

PR

実行結果

フォルダを移動できました。

実行結果
実行結果
PR

参考①

移動先のフォルダが既に存在している状態で移動を実行すると、以下のエラーが発生します。

エラーメッセージ
エラーメッセージ

※エラーメッセージには「同名のファイルが存在している」とありますが、本当のエラー理由は「同名のフォルダが存在しているから」です。

エラーが発生しないように、移動させる前に移動先のフォルダの存在有無を確認しましょう。


フォルダが既に存在している場合は、削除しておきましょう。

PR

参考②

ファイルを移動する方法は以下を参照してください。

PR

参考③

「FileSystemObject」の「MoveFolder」メソッドの詳細については、公式サイトをご確認ください。

タイトルとURLをコピーしました