VBAで
・フォルダを移動
できます!
移動時にエラーが発生しないように、
気を付けるべき点も記載します!
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(Source:=folderFullPath, _
Destination:=newFolderFullPath)
'後片付け
Set fso = Nothing
End Sub
実行結果
フォルダを移動できました。
参考①
移動先のフォルダが既に存在している状態で移動を実行すると、以下のエラーが発生します。
※エラーメッセージには「同名のファイルが存在している」とありますが、本当のエラー理由は「同名のフォルダが存在しているから」です。
エラーが発生しないように、移動させる前に移動先のフォルダの存在有無を確認しましょう。
フォルダが既に存在している場合は、削除しておきましょう。
参考②
フォルダ名を変更することもできます。
詳細は以下の記事をご確認ください。
参考③
フォルダでなく、ファイルを移動する方法は以下を参照してください。
参考④
「FileSystemObject」の「MoveFolder」メソッドの詳細は、公式サイトをご確認ください。