解決済み

FSOを使いサブフォルダのファイル操作

  • 困ってます
  • 質問No.9600778
  • 閲覧数126
  • ありがとう数1
  • 気になる数1
  • 回答数1
  • コメント数0

お礼率 93% (95/102)

同じ階層のサブフォルダに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

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

  • 回答No.1

ベストアンサー率 59% (920/1541)

他カテゴリのカテゴリマスター
エラーの出ている箇所には他では使われていない名前folder.Pathがありますね。
お礼コメント
kayakayakaya1

お礼率 93% (95/102)

回答ありがとうございます
ご指摘の箇所とそれに関連する箇所を修正し、無事動作することができました。
投稿日時 - 2019-03-27 12:44:43
結果を報告する
このQ&Aにはまだコメントがありません。
あなたの思ったこと、知っていることをここにコメントしてみましょう。
関連するQ&A
AIエージェント「あい」

こんにちは。AIエージェントの「あい」です。
あなたの悩みに、OKWAVE 3,500万件のQ&Aを分析して最適な回答をご提案します。

その他の関連するQ&A、テーマをキーワードで探す

キーワードでQ&A、テーマを検索する

ピックアップ

ページ先頭へ