「1月」「2月」「3月」や担当者名ごとにシートが分かれ、集計のたびに末尾へコピーしている。こうしたブックは、見た目は整理されていても、年間集計や検索のたびに手間が戻ってきます。
各シートが同じ項目なら、一つの明細表へ縦に積み上げ、月や担当者は列として持つ方が扱いやすくなります。シートを残したまま集約する方法もありますが、二重計上を防ぐ仕組みが必要です。
各シートの列名とデータ範囲がそろっているなら、Power Queryで一つの表へ追加する方法が有力です。シート名の揺れ、途中の小計、結合セルが多い場合は、先に入力様式を整えるかVBAで例外処理を加えます。
まとめやすいブックかを先に見る
次の条件が多いほど、手作業のコピーを置き換えやすくなります。
- 各シートの列名と並び順が同じ
- データ開始行がそろっている
- シート名から月・部署・担当者を判別できる
- 小計や注記を明細の途中に入れていない
- 同じ明細を複数シートへ重複入力していない
「シートをまとめる」より、明細の原本を決める
集約後の表を新しい原本にするのか、各シートを原本のまま残すのかで設計が変わります。後者の場合は、更新のたびに全シートを読み直し、前回分を重ねて取り込まない方式にします。
月別シートを今後も増やすなら、シート名の付け方と対象外シートのルールも決めておきます。説明用や集計用シートまで読み込むと、数字が二重になるためです。
- 1対象シートを決める
月別・担当別など、読み込むシート名の条件と除外条件を決めます。
- 2列を対応させる
表記が違う列は同じ名前へそろえ、月や担当者は追加列として持たせます。
- 3件数と合計を照合する
各シートの行数・金額と、統合後の件数・合計が一致するか確認します。
Power QueryとVBAの境目
同じ形の表を縦に追加するだけなら、更新手順を画面上で確認できるPower Queryが向きます。シートの保護解除、セル位置の探索、結果の別名保存まで一度に行う場合はVBAが候補です。
| 方法 | 向いている場面 | 確認したい点 |
|---|---|---|
| Power Query | 同じ列構成のシートを結合 | 対象シートと見出し行を固定する |
| VBA | 配置が不規則で、保存や印刷も行う | 例外時に処理を止める条件を決める |
| 表の作り直し | 今後は一つの明細表へ直接入力 | 入力者ごとの権限やフィルターを整える |
複数ファイルの集約で確認しておきたいこと
数枚だけなら、まず列名、見出し行、不要な小計をそろえるだけでも集計しやすくなります。
- 各シートをテーブル化する
- 結合セルを外し、1行1件にする
- 月や担当者をセルの色ではなく列で持つ
- 統合後の件数と金額を手計算で控える
複数ファイルの集約を相談するときに伝えること
正常なシートだけでなく、列が増えた月や空欄が多いシートも用意すると、例外を含めて相談できます。
- 実際のブックを複製し、個人情報を仮名にしたもの
- 対象にするシート名と除外するシート名
- 統合後に必要な列と並び順
- 同じ明細を見分ける番号やキー
- 統合後の見本
複数ファイルの集約をプロに任せる目安
- シートが数十枚あり、毎月増える
- 担当者ごとに列や開始行が違う
- 過去分を二重に取り込む事故が起きている
- 統合後の集計表やPDFまでまとめて作りたい
複数ファイルの集約で確認しておきたいこと
見た目が同じでも、セル結合や数式の混在により表の範囲が違うことがあります。
- 空のはずの行に書式だけ残り、最終行を誤判定する
- シート名変更で対象から外れる
- 小計行も明細として取り込む
- 再実行するたびに同じデータを追記する
列や見出しが少しずつ違うExcelファイルを毎月で確認しておきたいこと
シートの列順が違ってもまとめられますか?
列名が共通なら対応できる場合があります。ただし同じ意味の列名が複数ある場合は、どれを使うか先に決めます。
月別シートは削除した方がよいですか?
すぐに削除する必要はありません。統合表を確認し、運用が安定してから原本の持ち方を見直します。
数式の結果だけを取り込めますか?
可能です。数式自体を引き継ぐのか、表示された値だけを集約するのかを区別してください。