概要
「フォルダ内の多数のファイルから一覧表(まとめ表)を作りたい」
ポイントは、「テンプレートで作成したファイルを1か所に集めて、フォルダごとインポートする」 ことです。
コピペでファイル一覧作成は現実的でない
複数のファイルとその内容のリストを、
コピペだけで完結させようとすると、以下の問題が生じます。
- 作業の手間が多く、ミスの発生確率が高い。
- 新しいデータを追加しても、一覧に反映するのが面倒で放置されがち。
解決策:テンプレート + フォルダインポート
ファイルデータの一覧表作成を効率化するには、
複数ファイルを一括で読み込むために、
仕組みの概要
- テンプレートファイルを作成し、同じ構成のファイルを簡単に作れるようにする。
- 各ファイルを1つのフォルダにまとめて保存する。
- パワークエリでフォルダごと読み込み、一覧表を自動作成する。
エクセルでの実装方法
エクセルで、
使用するエクセル機能
| 機能 | 役割 |
|---|---|
| テーブル | 各ファイル間のデータ受け渡し欄 |
| ピボットテーブル | 一覧表を作成 |
| パワークエリ | フォルダ内の外部ファイルを読み込み、必要行のみ抽出 |
| テンプレート | 書式統一と再利用性の向上 |
ファイル・テーブル構成
各ファイルとその中に作成するテーブルは以下のようになります
- ファイル1: 書類テンプレート.xltx
- M_書類データ: 一覧表で抽出する書類データを格納するテーブル
- ファイル2: 一覧表.xlsx
- P_パラメータ: 一覧表のパスを格納するテーブル
- T_ファイルデータ 書類データの一覧を表示させるピボットテーブル
書類テンプレート.xltxを使って作成した書類ファイルは、
テーブル名のプレフィックス
テーブル名に設定しているM_やT_などのプレフィックス(接頭語)は、
以下の意味でつけています。
- M_ : マスターテーブル(基本情報を格納)
- T_ : トランザクションテーブル(時系列ごとのイベントを格納)
- P_ : パラメータテーブル(パラメータを格納)
※ プレフィックスは必須ではありません
フォルダ構成
定型書類_管理/
├─ 一覧表.xlsx(ファイル2)
├─ テンプレート/
│ └─ 書類テンプレート.xltx(ファイル1)
└─ 作成書類/一覧表.xlsx(ファイル2)と同一フォルダに
一覧表.xlsx(ファイル2)と同一フォルダに
作成後のファイル名とフォルダ位置の変更は慎重に
作成書類/のパスが変わると、一覧表.xlsxからの参照リンクが切れるため、
ファイルを作成後は、 作成書類/のフォルダ名や位置は基本的に変更しない ようにしてください
(再設定すれば可能)。
作成書類/に入れる書類ファイルのファイル名は、自由に設定できます。
テンプレート/フォルダ、書類テンプレート.xltxファイルは名前と場所を自由に変えられます。
一覧表.xlsxは、ファイル名を変えられますが、場所は変えられません。
実装手順
2つのファイル(書類テンプレート、一覧表)の作成手順を説明します。
名称は任意
ファイル名やテーブル名、列名、クエリ名、変数名は、任意に変更可能です。
好みの名称に置き換えて進めてもOKです。
フォルダの準備
作成していくファイルを配置するフォルダ(定型書類_管理)を用意します。
フォルダ構成の通りに、
- テンプレートフォルダ
- 作成書類フォルダ
用意したフォルダの中にファイルを作成していきます。
ファイル1. 書類テンプレートの作成
書類テンプレートでは、
- 出力エリア : 書類として出力する領域。
印刷やPDF化する場合は、このエリアのみが出力される。 - 作業エリア : 書類上には直接出力しない内容を記載する領域。
データをまとめて格納したテーブルなどを配置する。
2つのエリアは、別々のシートに分けることも可能ですが、

手順0. テンプレートファイルとして保存する
エクセルでファイルを新規作成したら、
手順1. 出力エリアを作成する
書類として出力される領域を作成し、印刷領域の設定をしておきます。
- 目的の書類フォーマットを作成する。
- ※ シート左上に詰めて作成し、下に伸ばしていく。
- 印刷範囲を設定する。
- 書類のフォーマットの列を選択 > ページレイアウトタブ > 印刷範囲ボタン > 印刷範囲の設定
※ 改ページプレビュー(表示タブより)を使うと、設定範囲がわかりやすい - ページレイアウトタブ > 余白ボタン > ユーザー設定の余白 > ページ中央:水平にチェック > OKボタン
- 書類のフォーマットの列を選択 > ページレイアウトタブ > 印刷範囲ボタン > 印刷範囲の設定
- 出力エリアの境界線を視覚化 & 固定化する(任意)。
- 印刷範囲(出力エリア)右端の1つ右の列を選択
- 表示タブ > ウィンドウ枠の固定
手順2. 作業エリアにデータテーブルを作成する
一覧表.xlsxで読み込みたい内容をまとめたテーブル(M_書類データ)を、
テーブルの作成方法
- 作成するセルを選択
- 挿入タブ > テーブルボタン
(Ctrl + t)

手順3. テーブルを参照して、出力エリアに値を挿入する
作業エリアに配置したM_書類データを参照して、
テーブルデータを参照するときは、構造化参照(=テーブル名[列名]の形式)を使用すると便利です。
構造化参照の中に"@"は不要
テーブルセルをクリックして構造化参照の式を作成すると、
数式中に"@"が入ることがあります(=テーブル名[@列名]の形式)。
これは「挿入するセル」と「参照元のテーブルセル」が同じ行に位置する場合に発生します。
構造化参照での @は「同じ行」を意味 するので、
@が数式に含まれたままセルを移動したときにエラーが発生します。
修正時に不便になるので、
今回のケースでは@を使わない構造化参照の式を使いましょう。
- ❌ =テーブル名[@列名]
- ✅ =テーブル名[列名]
ここまでで、書類テンプレートファイルが完成なので、

ファイル2. 一覧表の作成
作成書類/フォルダに格納したファイル群の情報を
手順0. 仮の書類ファイルを用意する
パワークエリの読み込み設定をする(手順1)ための、
- 書類テンプレート.xltxをダブルクリックし、新規ファイルを作成する。
- 作成書類/フォルダに.xlsx形式で保存する(書類1.xlsxなど)
- 作成したファイルを閉じる。
手順1. ファイルデータ一覧を作成する
パワークエリを使って、
- データタブ > データの取得 > ファイルから > フォルダーからボタン
- 作成書類/フォルダを選択
- ナビゲーターが開いたら、結合ボタン横のプルダウン > 結合および読み込み先...を押し、PowerQueryエディターを起動
- ※ ここから先に進めない場合は、作成書類/フォルダ内のファイルはすべて閉じているか確認する
(一時ファイルがあるとうまくいかない可能性あり)。
- ※ ここから先に進めない場合は、作成書類/フォルダ内のファイルはすべて閉じているか確認する
- M_書類データを選択 > OKボタン
- データのインポートウィンドウで、次の通りに設定 > OKボタン
- ピボットテーブルレポートを選択
- 既存のワークシートを選択 > =$B$6あたりを選択(任意)
- このデータをデータモデルに追加するは未チェック
手順2. ファイルデータ一覧を見やすく整形する
ピボットテーブルでファイルデータの一覧を見やすくなるよう設定します。
- ピボットテーブル上のセルを選択する。
- ピボットテーブルのフィールド項目を設定する。
- 表欄に、表示させたい項目をドラッグ&ドロップする
(テーブル左側から順に配置される)
- 表欄に、表示させたい項目をドラッグ&ドロップする
- ピボットテーブルのデザインを設定する(任意)。
- デザインタブ > 小計 > 小計を表示しないを選択
- デザインタブ > レポートのレイアウト > 表形式で表示を選択
- ピボットテーブルの名前を変更する(任意)。
- ピボットテーブル分析タブ
ピボットテーブル名:T_ファイルデータにする

手順3. 相対パスに対応させる
ファイルパスを格納したP_パラメータテーブルを作成し、
- ファイルパスを格納したテーブルを作成する。
- 列名:パス
- 値:=LEFT(CELL("filename", $A$1), FIND("[", CELL("filename", $A$1)) - 1)
- テーブル名:P_パラメータ
- パワークエリを起動する。
- データタブ > クエリと接続ボタン >
(その他のクエリの)作成書類をダブルクリック
- データタブ > クエリと接続ボタン >
- クエリを編集する。
- 右側のクエリ欄で作成書類選択状態であることを確認
ホームタブ
詳細エディターボタン- 以下になるようにコードを追加・修正
let パス = Excel.CurrentWorkbook(){[Name="P_パラメータ"]}[Content]{0}[パス], // 追加 ソース = Folder.Files(パス & "作成書類"), // 修正("パス &"の部分) ... in 変更された型- ホームタブ > 閉じて読み込む
エクセルで実装後の使い方
作成した書類テンプレート.xltxと一覧表.xlsxの使い方は下記の通りです。
書類を作成するとき
一覧表を見るとき
- 一覧表.xlsxを開く。
- すべて更新ボタンを押してデータ更新(Ctrl + Alt + F5)。
- 適宜、ピボットテーブルの機能(データの並び替え・ソート、フィールド設定の変更)を使って見やすくする。
まとめ
- VBAを使わずに、複数ファイルをまとめる仕組みを構築できる。
- 一度テンプレートと構成を作れば、更新作業はボタン1つで完了。
- データの整合性が保たれ、属人化を防ぐ。
応用:まとめ表から書類を作ることも可能
この記事では





