まず押さえるべき「横断集計」の考え方(やりたいことを整理する)
Excelで「複数シートを横断して集計したい」と言うと、つい関数や機能の名前(3D集計、INDIRECT、Power Queryなど)から探しがちです。でも実務で最短ルートを選ぶには、先に「横断集計で何をしたいのか」を整理するのが近道。ここが曖昧だと、作った後に「シートが増えたら壊れた」「レイアウトが違って集計できない」「更新が面倒」で詰みます。
横断集計の基本はシンプルで、やっていることは次のどれかに分類できます。
- 同じ形の表が複数シートにある(例:1月〜12月の売上シート)を、合計・平均したい
- シートごとに条件で拾って集計したい(例:部署ごとのシートから「商品A」だけ合計)
- シート構造がバラバラ/増減するので、取り込み→整形→集計を自動化したい
この分類ができると、選ぶべき手段が見えてきます。ざっくり言えば、
- レイアウトが完全に同一なら3D集計が最速
- シート名を変数として扱いたいならINDIRECT+SUMIF/SUMIFS
- 増えるデータを継続運用するならPower Queryが強い
ここで、あなたのファイルを判断するためのチェック項目を用意します。以下にサクッと答えるだけで、2章以降のどれを読めばいいか決まります。
| チェック | YESなら | 主な候補 |
|---|---|---|
| 各シートの集計したいセル位置が同じ(例:B2が必ず売上) | 同一レイアウト | 3D集計 |
| 「商品名」「担当」「日付」など条件指定して合計したい | 条件集計が必要 | INDIRECT+SUMIF/SUMIFS |
| シート追加・形式変更が多い/毎月更新が面倒 | 運用負荷が高い | Power Query |
さらにもう一歩だけ。横断集計でよくある失敗は、「集計の目的」と「データの持ち方」が噛み合っていないことです。例えば、月別シートに同じ表が並ぶ形式は見た目が分かりやすい一方で、後から分析(商品別・担当別・前年差など)を増やすと一気に苦しくなります。逆に、Power Queryで縦持ち(明細が1表にまとまる)にしておくと、ピボットやグラフが作りやすくなります。
つまり横断集計は「合計を出す技」ではなく、運用を含めた設計の話。この後の章では、難易度が低い順に「今すぐできる方法」から「実務で壊れない方法」へ進めます。まずはあなたの状況が同一レイアウト型なのか、条件集計型なのか、自動化型なのかを決めてから読むと、ムダなく最短でたどり着けます。
一番カンタン:3D集計(同じレイアウトの複数シートを一括合計)
1章のチェックで「各シートの集計したいセル位置が同じ(B2が必ず売上など)」にYESなら、まず覚えるべき最短ルートが3D集計です。難しいことは不要で、やることは「シートA〜シートBの同じセルをまとめて足す」だけ。月別シート(1月〜12月)や拠点別シート(東京〜福岡)みたいに、同じフォーマットが横に増えるタイプに刺さります。
3D集計の基本形(合計・平均など)
書き方はシンプルで、次の形になります。
=SUM(開始シート:終了シート!セル)
例えば、各月シートのB2に「売上合計」が入っているなら、集計シートでこう書けばOK。
=SUM(1月:12月!B2)
これだけで、1月〜12月シートのB2を一括で合計できます。SUM以外も同様に使えて、例えば平均なら =AVERAGE(1月:12月!B2) のように書けます。
いちいち式を書かない:機能で作る手順
関数が苦手でも大丈夫。Excelの「統合」機能を使うと、3D参照の集計を一瞬で作れます。
- 集計結果を置くシートを開く
- データタブ → 統合
- 集計方法(合計/平均など)を選ぶ
- 参照に各シートの範囲を追加(同じ位置の表を指定)
- 必要なら「上端行」「左端列」を使って見出しで揃える
「とにかく今日中に合計を出したい」なら、この統合が最速です。
3D集計の強み:シートが増えても“間に挟めば”追従する
3D集計の地味に強いポイントがここ。たとえば =SUM(1月:12月!B2) の場合、1月と12月の間に新しいシート(例:6.5月)を追加すると、そのシートのB2も自動で集計対象に入ります。
逆に、間ではなく範囲外に作ると拾われません。運用するなら、集計対象の先頭・末尾シートを固定するのがコツです(例:「Start」「End」シートを作り、その間に月シートを入れる)。
注意点:レイアウトがズレると一気に事故る
3D集計が効く条件は明確で、各シートで同じセルに同じ意味の数字があること。これが崩れると、合計は出ても中身が間違います。
- ある月だけ行追加して、売上合計のセルがB2→B3にズレた
- 一部シートだけ列構成が違う(=別の数字を足してしまう)
- 集計対象に休眠シートやメモ用シートが紛れた
つまり3D集計は、「同一レイアウトを守れる職場」ほど強い。逆に「商品別に条件集計したい」「シート名を変数で回したい」になったら、次章のINDIRECT+SUMIF/SUMIFSが出番です。
応用編:INDIRECT+SUMIF/SUMIFSでシート名を指定して集計する
3D集計は「同じセル」を足すのが得意でした。一方で実務だと、「シートごとに明細があって、その中から条件に合うものだけ合計したい」がよく起きます。たとえば「各部署シートから“交通費”だけ合計」「各月シートから“商品A”の売上だけ集計」みたいなケース。ここで効くのがINDIRECT+SUMIF/SUMIFSです。
考え方:シート名を“セルで管理”して、関数に渡す
ポイントは、関数の中に直接 1月!A:A などと書くのではなく、シート名を一覧にしてセルに持たせること。こうすると「どのシートを集計するか」を後から差し替えたり、表として増やしたりできます。
例として、集計シートのA列に対象シート名、B列に条件、C列に合計を出す形にします。
A列:シート名(例:1月、2月、3月…)
B列:条件(例:商品A)
C列:集計結果
SUMIFで単一条件(商品名など)を拾って合計する
各シートに「商品名がA列、金額がD列」の明細があるとして、A2にシート名、B2に商品名が入っているなら、C2はこう書けます。
=SUMIF(INDIRECT("'"&$A2&"'!$A:$A"), $B2, INDIRECT("'"&$A2&"'!$D:$D"))
INDIRECT("'"&$A2&"'!$A:$A"):A2のシートのA列(商品名列)を参照$B2:条件(商品Aなど)INDIRECT("'"&$A2&"'!$D:$D"):合計する金額列を参照
シート名にスペースが入る可能性があるので、シート名は必ず '(シングルクォート)で囲う書き方にしておくのが安全です。
SUMIFSで複数条件(商品×日付×担当など)に対応する
「商品A」かつ「担当:佐藤」だけ、のように条件が増えるならSUMIFSを使います。たとえば各シートで、商品がA列・担当がB列・金額がD列だとして、
- A2:シート名
- B2:商品名
- C2:担当名
このときD2に集計結果を出すなら、次のように書けます。
=SUMIFS(
INDIRECT("'"&$A2&"'!$D:$D"),
INDIRECT("'"&$A2&"'!$A:$A"), $B2,
INDIRECT("'"&$A2&"'!$B:$B"), $C2
)
「シート名だけ変えれば同じロジックで回せる」ので、A列にシート名を並べて下へコピーすれば、月別・部署別の横断条件集計が一気に作れます。
この方法が刺さる場面/刺さらない場面
- 刺さる:各シートに明細があり、条件で拾って合計したい(商品別、科目別、担当別など)
- 刺さらない:データ量が多い・シート数が多い・頻繁に更新する(後述のPower Queryの方が安定)
注意点:INDIRECTは“便利だけど重い&壊れやすい”
INDIRECTは文字列から参照を作る分、Excel的にはコストが高めです。特に次の点は押さえておくと事故が減ります。
- シート名の変更に弱い:一覧(A列)のシート名が実物とズレると即 #REF!。運用では「シート名ルール」を固定する
- ブックをまたぐとやや面倒:別ファイル参照は原則“開いている必要”が出ることが多い
- 列全体参照は重くなりがち:
$A:$Aではなく、可能なら$A$2:$A$1000のように範囲を絞る
まとめると、INDIRECT+SUMIF/SUMIFSは「シート名を変数にして、条件で拾って集計する」ための実戦的な武器です。ただ、運用が大きくなるほど負荷や壊れやすさが出るので、毎月更新・データ増加が前提なら、次章のPower Queryで“取り込み→整形→集計”を自動化が一段ラクになります。
実務で強い:Power Queryで複数シートを取り込み→整形→集計まで自動化
3D集計やINDIRECTは「式で頑張る」方法でした。ですが毎月の更新、シート追加、明細行の増減が当たり前の現場だと、いずれ更新漏れ・参照ズレ・ファイルが重いの壁に当たります。そこで強いのがPower Query。一度作ってしまえば、次回以降は基本更新ボタン1つで「取り込み→整形→集計」まで自動で回せます。
Power Queryの考え方:横に散らばる明細を“縦に積む”
ポイントは、複数シートの明細をいったん1つの表(縦持ち)にまとめること。月別シートが12枚あるなら、Power Queryで12枚を結合(Append)して「月」「部署」などの情報を列として持たせます。こうすると、その後はピボットテーブルや集計表が作り放題になります。
手順(例:同じ形式の月別シートを一括取り込み)
- データタブ → データの取得 → ブックから(同一ファイル内なら「このブック」でもOK)
- ナビゲーターで「シート一覧」や「テーブル」を選び、データの変換(Power Queryエディターを開く)
- 対象シートだけに絞る(例:1月〜12月、あるいは名前に「月」が入るもの)
- 結合(追加/Append)で明細を縦に積む
- 列名を整える/不要列を削除/データ型(日付・数値)を設定
- 最後に閉じて読み込む(テーブル or ピボット用データとして読み込み)
ここまで作れば、各月シートに新しい行が増えても、基本は更新で追従します(レイアウト変更がない前提)。
「どのシートから来たデータか」を残す:実務で必須の一手
Power Queryで結合するときは、あとで原因調査できるように出どころを持たせるのがコツです。具体的には、取り込み時にシート名(=1月、2月…)を列として追加します。
- 列に「月」や「部署」を追加しておく
- 集計表で月別・部署別の内訳がすぐ切れる
- 数字がズレたときも「どのシートのデータか」追える
集計までPower Queryでやる/Excel側(ピボット)でやる
集計は2択です。
- Power Queryで集計:「グループ化」で商品別合計、月別合計を作って、その結果だけ読み込む(軽い・安定)
- Excelで集計:結合した“明細テーブル”を読み込み、ピボットテーブルで自由に切る(分析の自由度が高い)
おすすめは、まず明細を1本化して読み込み、集計はピボットで回す運用。集計軸が増えても作り直しが効きます。
Power Queryが刺さる場面(=採用判断)
- 毎月・毎週の更新がある(手作業をゼロにしたい)
- データ量が多く、INDIRECTだと重い
- シートが増える/部署や月が増える前提
- 「集計だけ」で終わらず、後から分析軸が増えがち
関数で“今だけ”を乗り切るより、Power Queryでデータを整える仕組みを作った方が、結局いちばん速い。次章では、さらに運用で詰まらないための「シート追加に強い設計」や「よくあるエラー」の潰し方をまとめます。
失敗しない運用術(シート追加に強い設計・よくあるエラーと対処・時短Tips)
横断集計は「作る」より回し続ける方が難しいです。月末にシートが増える、誰かが列を足す、シート名が微妙に変わる——この“あるある”で集計は簡単に壊れます。ここでは、3D集計/INDIRECT/Power Queryそれぞれで事故を起こさない運用の型をまとめます。
シート追加に強い設計:Start/Endで範囲を固定する(3D集計の必須ワザ)
3D集計は「間に挟めば追従する」が強みでした。だから運用は、集計対象の両端を固定シートにするのが鉄板です。
- 集計対象の先頭に Start、末尾に End を作る
- 式は
=SUM(Start:End!B2)のように書く - 月シートは必ずStartとEndの間に追加する(これだけで追加漏れが消えます)
「1月〜12月」のように名前で範囲を作ると、翌年や例外月で崩れがち。Start/End方式なら、運用ルールがシンプルで新人にも引き継げます。
よくあるエラーと対処:#REF!/0になる/合計がズレる
- #REF!(参照が無い):INDIRECTで多いです。原因の9割はシート名の不一致。対策は「シート名一覧を手入力しない」こと。可能ならシート名ルールを固定し、一覧をコピペで更新。スペースや全角半角も要注意です。
- 0になる(条件に引っかからない):SUMIF/SUMIFSの条件列に余計な空白が入っているケースが頻発。対策は、元データ側でTRIM相当(手作業なら「空白の削除」)を徹底、もしくは条件値の表記ゆれ(例:商品A / 商品A)をマスタで統一します。
- 合計がズレる(数字は出るが間違ってる):3D集計で一番怖いパターン。レイアウトが1シートだけズレても気づきにくい。対策は「入力セルを触らせない」仕組み化(テンプレ運用/入力欄のみ色分け/保護)です。
Power Query運用の落とし穴:列名変更とデータ型
Power Queryは強い反面、現場の“軽い変更”に弱いことがあります。
- 列名が変わると更新でコケる:対策は、取り込み元の見出しをマスタ化して変更禁止にするか、最初に「必要列だけ残す」ステップを作りすぎない(依存を減らす)こと。
- 日付・数値の型が崩れて集計できない:月末にコピーして文字列になりがち。対策は、Query内でデータ型の設定を入れておく(更新時に自動で矯正)。
- どのシート由来か分からなくなる:4章の通り、必ずシート名列を残しておくと、集計ミスの調査が秒速になります。
時短Tips:運用をラクにする3つの小技
- 条件・シート名は「入力欄」を分ける:集計表の上部に「対象月」「商品」「部署」などをまとめるだけで、式の修正が激減します(触る場所を固定)。
- 重いときは“列全体参照”をやめる:INDIRECT×列全体は一気に重くなります。範囲は
$A$2:$A$10000のように現実的な上限を決めると体感が変わります。 - 集計の正しさチェック用の「突合」行を作る:例えば月別合計の総和と、明細側の総和が一致するかを最下段で確認。数字がズレた瞬間に気づけます。
結局、横断集計で一番効くのは「仕組み」と「ルール」です。3D集計ならStart/End、INDIRECTならシート名管理と範囲絞り、Power Queryなら列名と型の統一。ここまで押さえれば、月末の集計が“毎回のイベント”ではなく、ただの更新作業になります。


コメント