同じ階層のサブフォルダにxlsm入るが入っており、VBAによりモジュールを解放しようと試みています。
まずは、FSOを使ってサブフォルダにアクセスしようとしましたが、下から6行目でエラー(424 オブジェクトが必要です)が出てしまい、解決できませんので、ご教示いただけないでしょうか?
よろしくお願いします
Sub DeleteMain()
With Application.FileDialog(msoFileDialogFolderPicker)
If Not .Show Then Exit Sub
Call DeleteSub(folderPath:=.SelectedItems(1))
End With
End Sub
Sub DeleteSub(folderPath As String, Optional mycount As Long = 0)
Dim fso As Object, myFolders As Object, myfile As Object
Set fso = CreateObject("Scripting.FileSystemObject")
Set myFolders = fso.GetFolder(folderPath).SubFolders
For Each myfile In fso.GetFolder(folderPath).Files
mycount = mycount + 1
' Cells(mycount, 1) = myfile.Path
Debug.Print myfile.Path
Next
For Each myFolders In fso.GetFolder(folder.Path).SubFolders
Call DeleteSub(myFolder.Path, mycount)
Next
Set fso = Nothing
Set myFolders = Nothing
End Sub
お礼
回答ありがとうございます ご指摘の箇所とそれに関連する箇所を修正し、無事動作することができました。