• ベストアンサー

VBAで、同一フォルダの複数ファイルに対し「backup」フォルダを同

VBAで、同一フォルダの複数ファイルに対し「backup」フォルダを同じディレクトリに作成した上で、全ファイルをそこへコピーするソースを教えていただけますでしょうか?

質問者が選んだベストアンサー

  • ベストアンサー
  • ka_na_de
  • ベストアンサー率56% (162/286)
回答No.2

こんばんは。 一例です。 Sub test()   Dim myFolderName As String   Dim myFolderCheck As String   Dim myFileName As String   myFolderName = "backup"      myFolderCheck = Dir(ThisWorkbook.Path & "\" & myFolderName, vbDirectory)   If myFolderCheck = "" Then     MkDir ThisWorkbook.Path & "\" & myFolderName   End If      myFileName = Dir(ThisWorkbook.Path & "\*.*", vbNormal)   Do Until myFileName = ""     If myFileName <> ThisWorkbook.Name Then       FileCopy myFileName, myFolderName & "\" & myFileName     End If     myFileName = Dir()   Loop End Sub

その他の回答 (1)

  • quicon9ue
  • ベストアンサー率31% (6/19)
回答No.1

Set fso = CreateObject("Scripting.FileSystemObject") If fso.FolderExists(".\backup") = False Then fso.CreateFolder (".\backup") End If For Each afile In fso.GetFolder(".").Files fso.CopyFile afile.Path, fso.GetParentFolderName(afile) & "\backup\" Next ご要望はこんな感じでしょうか? メモ帳にはりつけて、拡張子vbsで同じフォルダに保存し、実行してください。 Excel等のVBAでやるなら、ThisWorkBook.Pathとかに書き換えて、絶対パスにしてください。"."は使えません。