いまさら聞けないExcelの使い方講座

【Excel】フォルダー内にある大量のファイル構造を確認したい! 一覧リスト化するテク

大量のファイルを一覧にして整理しよう

ファイル名を1つずつコピーする必要はない

 プロジェクトが一段落したときや、共有フォルダーを整理するときなど、保存されているファイルを一覧にして確認したいことがありますよね。納品物のデータを俯瞰する資料として添付することもあります。その際は、ファイル名だけでなく、どのフォルダーに何が保存されているのかも整理しておくと、全体を把握しやすくなります。

 例えば、最上位フォルダー名、サブフォルダー名、ファイル名をそれぞれの列に分け、同じフォルダー名が続く場合は2行目以降を空欄にして、フォルダーの構成もひと目で把握できる形に仕上げるとします。

 しかし、複数のフォルダーやサブフォルダーに大量のファイルが保存されていると、ファイル名を1つずつコピーしてExcelに貼り付けるのは手間がかかります。

今回の例では、最上位の階層に「営業資料」「経理」「人事」といったフォルダーがあり、その中に「見積書」「提案書」「採用」「勤怠」などのサブフォルダーがあります。さらに、それぞれにExcelファイルやWordファイル、PDFファイルなどが保存されています
どのフォルダーに何のファイルが保存されているかを手作業でまとめるのは大変です

 そこで今回は、Power Queryでサブフォルダーを含むファイル情報をまとめて取得し、その結果をCopilotに整理してもらいます。Power Queryではデータを加工せず、欲しい一覧の形をCopilotへの指示だけで作るのがポイントです。

Power Queryでサブフォルダーを含むファイル情報を取得する

 まずはPower Queryを使って、対象のフォルダー内のファイル情報をまとめて取得します。フォルダーを指定すると、その中に保存されているファイルが一覧で表示されます。サブフォルダーがある場合は、その中に保存されているファイルもまとめて取得されます。そのため、エクスプローラーでフォルダーを1つずつ開いて、ファイル名を拾っていく必要はありません。

[データ]タブから[データの取得](①)をクリックし、[ファイルから]-[フォルダーから](②)を選択します
一覧にするファイルが保存された最上位のフォルダーを指定すると、サブフォルダーの内容も含めてファイルが一覧で表示されます。ここで[データの変換]をクリックすれば、Power Queryエディターを使って不要な列を削除したり、フォルダーのパスを分割したりできますが、今回はPower Queryによる加工は行いません。そのまま[読み込み](③)をクリックして、取得したデータをワークシートへ読み込みます。
ファイルの一覧が読み込まれて、テーブルで表示されます

 読み込まれたテーブルには、ファイル名を示す「Name」列のほか、拡張子の「Extension」列、更新日時の「Date modified」列、保存場所を示す「Folder Path」列など、さまざまな情報が含まれています。

 必要な情報は取得できましたが、「Folder Path」にも長いパスが表示されています。フォルダーの構成とファイルの関係を確認する一覧としては、もう少し整理したいところです。ここから先の作業は、Copilotに任せましょう。

取得した一覧をCopilotで見やすく整理する

 自分で表を加工する場合、「Folder Path」列に含まれるパスを分割して必要なフォルダー名を取り出し、不要な列を削除するといった処理が必要です。フォルダーの階層が増えれば、どこで文字列を分割するかも考えなければなりません。

 Copilotを使う場合は、そうした処理方法を細かく指定するのではなく、「最終的にどのような一覧にしたいのか」を伝えます。

Power Queryで取得したファイル一覧を、フォルダーの階層ごとに列を分けて整理してください。

・1列目:最上位フォルダー名

・2列目以降:サブフォルダー名を階層ごとに分ける

・最後の列:ファイル名

・同じフォルダー名やサブフォルダー名が連続する場合は、最初の行だけ表示し、2行目以降は空欄にする

整理した結果は新しいシートに出力し、元の一覧は含めないでください。

 指示に従って処理されると、新しいシートにフォルダーの階層とファイル名を整理した一覧が作成されます。同じフォルダーに複数のファイルが保存されている場合は、フォルダー名は先頭行だけに表示されます。元の「Folder Path」列をそのまま並べるよりも、フォルダーとファイルの関係を確認しやすくなります。

 例えば、「営業資料」フォルダーの中に「見積書」サブフォルダーがあり、そこに複数のファイルが保存されている場合は、「営業資料」-「見積書」-「A社_見積書.xlsx」といった関係が列ごとに整理されます。

[Copilot]のボタン(④)をクリックします
上記のプロンプトを送信します
フォルダーに含まれるファイルの一覧が整理されました

 もちろん、Power Queryにもパスを分割したり、不要な列を削除したりする機能があります。定期的に同じ形式の一覧を作るのであれば、Power Query側で変換手順まで設定しておく方法もあります。

 今回は、Power Queryにはファイル情報の取得だけを任せ、その後の加工はCopilotに任せています。細かな加工方法を考えるのではなく、「このような表が欲しい」と完成形を伝えて処理できるのがポイントです。

少ないファイルなら[パスのコピー]でも一覧化できる

 サブフォルダーまで含める必要がなく、1つのフォルダーに保存されているファイルを一覧にしたいだけなら、Power Queryを使わない方法もあります。

 エクスプローラーで対象のファイルを選択して右クリックし、[パスのコピー]を選択します。そのままExcelのワークシートに貼り付ければ、選択したファイルのパスをまとめて入力できます。少数のファイルを対象に一覧を作りたい場合なら、この方法のほうが手軽です。

 なお、フォルダーを含めて選択した場合は、そのフォルダーのパスがコピーされます。サブフォルダーに含まれるファイルは対象外です。

フォルダー内のファイルをすべて選択して、右クリック(⑤)し、[パスのコピー](⑥)を選択します
ファイルのパスを含めて、Excelに貼り付けることができます

 一方、今回紹介したような複数のサブフォルダーに分かれた大量のファイルをまとめて確認したい場合は、Power QueryとCopilotを利用すれば、長いフォルダーパスを自分で加工しなくても、目的に合った一覧に仕上げられます。ファイルの数やフォルダーの構成に応じて、[パスのコピー]とPower Query+Copilotを使い分けてみてください。