例えば、ハードディスクやファイルサーバー内のドキュメントを整理したいとき、エクスプローラーでフォルダーを開いて選別するのは、厄介なことです。そんなとき、特定のフォルダーの配下にあるファイルを一覧表にできれば、全体を一望できて便利でしょう。しかもExcelなら、その一覧をソートしたり、特定の条件で抽出したりすることが自由自在です。

 そこで、指定したフォルダーを再帰的に読み込み、図1のようなファイル一覧を生成するマクロを作成してみましょう。

図1●指定したフォルダーの配下にあるファイルの情報を読み込んで一覧を生成
図1●指定したフォルダーの配下にあるファイルの情報を読み込んで一覧を生成
[画像のクリックで拡大表示]

 まず、ファイル一覧を表示するためのシートを用意します。シート名は「file_list」としてください。図1のように「ファイル名」「親フォルダー(パス)」「サイズ(KB)」「種類」「作成日時」「最終アクセス日時」「更新日時」といった項目を設置します。また、ファイル検索を開始するためのコマンドボタン(ActiveXコントロール)も配置しておきましょう。ここではG1~H1セルの辺りに、「btnAction」というオブジェクト名で作りました。