• ベストアンサー

エクセルのVBAで、フォルダごとコピーしたいのですが…

エクセルのVBAで、フォルダごとコピーしたいのですが… Dドライブの”TEST"というフォルダを、同じくDドライブに"TEST2"という名前でコピーしたいのです。 Private Sub sakusei_Click() Dim myFSO As New FileSystemObject myFSO.CopyFolder "D:\TEST", "D:\TEST2" End Sub ではうまくいかないのです。 私は初心者なので調べてもよくわからないので、 有識者の方、是非教えてください。 宜しくお願い致します。

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

  • ベストアンサー
回答No.1

Visual Basic Editor の [ツール]-[参照設定] で、 "Microsoft Scripting Runtime" にチェックを入れていますか?

satosuke20
質問者

お礼

ありがとうございました!! おかげ様でコピーできました。 もっと勉強して回答者の皆さんのように詳しくなりたいです。

その他の回答 (2)

noname#140971
noname#140971
回答No.3

勘違いでした。 単なる参照設定!

noname#140971
noname#140971
回答No.2

[イミディエイト] ? FolderCopy("D:\Test", "D:\Test2") True で、コピーできたようです。 Public Function FolderCopy(ByVal F As String, ByVal T As String) As Boolean On Error GoTo Err_FolderCopy   Dim isOK As Boolean   Dim fso As Object      isOK = True   Set fso = CreateObject("Scripting.FIleSystemObject")   fso.CopyFolder F, T Exit_FolderCopy:   FolderCopy = isOK   Exit Function Err_FolderCopy:   MsgBox Err.Description & "( FolderCopy)"   isOK = False   Resume Exit_FolderCopy End Function Private Sub sakusei_Click()   Dim myFSO As New FileSystemObject   myFSO.CopyFolder "D:\TEST", "D:\TEST2" End Sub 両者の違いは Set文の有無ですね。 Dim fso As FileSystemObject Set fso = New FileSystemObject

関連するQ&A

専門家に質問してみよう