VBA:[Tips]フォルダ内にあるファイル名を検索する

「VBA:[Tips]フォルダ内にあるファイル名を検索する」の編集履歴(バックアップ)一覧に戻る

VBA:[Tips]フォルダ内にあるファイル名を検索する - (2015/04/15 (水) 21:44:38) の編集履歴(バックアップ)


なにがどう

フォルダ階層中にある特定ファイルを探す。

探索方法

  1.  フォルダを探す
  2.  検索で見つかったフォルダ内に、検索条件に合致するファイルを探す。
  3.  ファイルが無いとき、フォルダ内にフォルダがあるかを探す。

フォルダもファイルも無いとき、探索終了。

どう実装するのか

使うオブジェクト

FileSystemObject
あとは再帰呼び出しをうまく活用する。
ファイルを探索するには以下のものが必要になる。
1.全てのフォルダを探索する関数
2.検索条件に合致するファイルを探索する関数

まずフォルダを探索するメソッドを書く。

Sub folderSearch(path)
'オブジェクトの生成
With Create.Object("Scripting.FileSystemObject")
	'pathはフォルダのパス
	For Each folder In .GetFolder(path).SubFolders
	<<このあたりにフォルダ名を出力するコードを書く>>
		'再起呼び出し。検索でヒットしたフォルダのパスを引数に.
		Call folderSearch(folder.path)
	Next folder
End With
End Sub

同様に、ファイルを探索するメソッドを書く。

(^o^)ノ眠いから明日書く