VBAでサブフォルダの中にある全てのエクセルファイルを取得した後、条件に当てはまるファイル(ファイル名にテストが含まれる)を全て取得したいと思っています。
以下のコードでは、1つのエクセルファイルしか取ってくることができません。
Dirでフォルダのパスを指定する必要があると推測しています
そうだとしても、フォルダとファイルでFor Each を分けているのでどうすればいいのか、分かりません。
よろしくお願いします。
Sub FileSearch(Path As String) Dim FSO As Object, Folder As Variant, File As Variant Set FSO = CreateObject("Scripting.FileSystemObject") //サブフォルダをすべて取得 For Each Folder In FSO.GetFolder(Path).SubFolders Call FileSearch(Folder.Path) Next //ここでエクセルファイルを全て取得した後、特定のファイルだけを取得したい For Each File In FSO.GetFolder(Path).Files If File.Name = Dir("*テスト.xls*") Then MsgBox File.Name End If Next End Sub
回答1件
あなたの回答
tips
プレビュー