下記プログラム内容ですが、ウェブサイトから抜粋しています。
指定フォルダの全てのフォルダパスを取得できたため、フォルダ名を回してフォルダの中のフォルダの各ファイルパスを順次取得できないか検討中です。
(多階層ファイルのフォルダを取得したい)
foldername にフォルダ名を格納しているつもりですが、
Set fl = fso.GetFolder("C:\Users\08260\Desktop\試し"foldername)
この行にてパスが見つかりませんとエラーが出ます。
下記内容で、フォルダ名を回して、各フォルダのファイルパスを取得するにはどのように記述したらよろしいでしょうか。
お手数おかけしますがご教授お願いいたします。
VBA
1Sub test2() 2Dim fso As FileSystemObject 3Set fso = New FileSystemObject ' インスタンス化 4 5Dim pfl As Folder 6Set pfl = fso.GetFolder("C:\Users\:::\Desktop\試し\") 7 8Dim foldername As String 9Dim fl1 As Folder 10 11For Each fl1 In pfl.SubFolders 12 foldername = fl1.Name 13 Dim fl As Folder 14 Set fl = fso.GetFolder("C:\Users\:::\Desktop\試し\foldername\") ' フォルダを取得 15 16 Dim f As file 17 For Each f In fl.Files ' フォルダ内のファイルを取得 18 Debug.Print (f.Path) ' ファイルのパス (D:\Tips.txt) など 19 Next 20Next 21 22' 後始末 23Set fso = Nothing 24 25End Sub 26
回答1件
あなたの回答
tips
プレビュー
バッドをするには、ログインかつ
こちらの条件を満たす必要があります。
退会済みユーザー
2021/10/29 03:46