【Excel】3D参照(串刺し集計)で複数シートの同じセルを合計する

この記事は約6分で読めます。

1月・2月・3月…とシートが分かれた表で、同じセルを合計したいことがあります。使うのは3D参照、いわゆる串刺し集計です。

シート名を1つずつ数式に並べると、シートが増えるたびに数式を直すことになります。3D参照なら「最初のシートから最後のシートまで」とまとめて指定できるので、数式は1本のままで済みます。

この記事で分かること

  • 複数シートの同じセルを1本の数式で合計する書き方(=SUM(月別1:月別3!B2:B10)
  • シートを追加したときに、自動で集計に入るシートと入らないシートの違い
  • 3D参照が使える関数と、使えない関数
  • 合計が合わないときに疑う3か所

どんな場面で使うか

「各シートのレイアウトが同じで、同じ位置のセルを足したい」という形であれば、どれも同じ書き方でカバーできます。

  • 月別の売上シート(1月・2月・3月…)から、四半期や年間の合計を出す
  • 部門ごとに分けたシートを合わせて、全社の合計を出す
  • 拠点別・担当者別のシートから、全体の件数を数える
  • プロジェクトごとのシートから、原価の総額を出す

いずれも「シートは違うが、セルの位置は同じ」という構造です。逆に、シートごとに行数や列の並びが違う場合は3D参照には向きません。

基本説明:3D参照とは

3D参照とは、数式の中で複数のシートをまとめて指定できる書き方です。

通常の参照は「行と列」の2次元でセルを指定します。3D参照はそこに「シート」という軸を足して、同じセル範囲を複数のシートに対して一度に指定します。串刺し集計と呼ばれるのは、重ねたシートを串で刺すようなイメージからきています。

使うデータ

この記事では、次の3つのシートを持つブックを例にします(記事末尾のサンプルファイルと同じ構成です)。

  • 月別1
  • 月別2
  • 月別3

3枚とも中身のレイアウトは同じで、A列に商品名、B列に売上が入っています。データは2行目から10行目まで、つまり B2:B10 の9行です。

A B
1 商品 売上
2 商品A 120,000
3 商品B 98,000
10 商品I 117,000

通常の書き方

シート名を1つずつ指定すると、こうなります。

=SUM(月別1!B2:B10, 月別2!B2:B10, 月別3!B2:B10)

シートが12か月分あれば、この並びが12個続きます。

3D参照での書き方

同じ集計を、3D参照ではこう書きます。

=SUM(月別1:月別3!B2:B10)

「月別1 から 月別3 まで」の全シートの B2:B10 を合計します。シート名をコロン(:)でつなぐのがポイントです。

サンプルのデータで実行すると、3シート合わせて27件・3,008,000 が返ります。シートが何枚に増えても、数式の長さは変わりません。

手順

1. 各シートのレイアウトをそろえる

3D参照は「どのシートでも同じ位置に同じ意味のデータがある」ことが前提です。先にレイアウトを統一しておきます。

2. 集計したいセル範囲を決める

どのシートでも共通で使える範囲(例:B2:B10)を決めます。

3. 数式を入力する

集計用のシートで、=SUM( と入力したあと、次のどちらかで範囲を指定します。

  • 直接入力する:=SUM(月別1:月別3!B2:B10)
  • マウスで指定する:最初のシートのタブをクリック → Shift キーを押しながら最後のシートのタブをクリック → 対象のセル範囲をドラッグ

4. シートを追加するときは位置に注意する

新しいシートは、開始シートと終了シートの間に挿入します。そこに入れておけば、数式を直さなくても集計に含まれます。

使用例

やりたいこと 数式の例
全シートの合計 =SUM(月別1:月別3!B2:B10)
全シートの平均 =AVERAGE(月別1:月別3!B2:B10)
全シートの件数 =COUNT(月別1:月別3!B2:B10)
全シートの最大値 =MAX(月別1:月別3!B2:B10)
シート名にスペースがある =SUM('4月 実績:6月 実績'!B2:B10)

シート名にスペースや記号が含まれるときは、シート名の範囲全体をシングルクォート(')で囲みます。片方だけを囲むのではなく、'開始:終了' の形でまとめて囲む点に注意してください。

よくあるエラー・注意点

対象になるのは「タブの並び順」で挟まれたシート

3D参照が集計するのは、開始シートと終了シートの間にタブとして並んでいるすべてのシートです。シート名の末尾の番号とは関係ありません。月別1と月別3の間にメモ用や作業用のシートを置くと、そのシートも集計対象に入ってしまいます。

追加したシートが集計に入っていない

一番多いのがこれで、しかもエラーにならないので気づきにくい失敗です。新しいシートを終了シートより右(外側)に作ると、集計対象に入りません。数式はエラーを出さず、そのシートの分だけ少ない合計を返します。合計が思ったより小さいときは、まずタブの並びを確認してください。

シートを削除・名前変更した

開始シートまたは終了シートを削除すると、参照が壊れて #REF! になることがあります。間のシートの削除は、範囲から自動で外れるだけで数式は残ります。名前を変えたときは、数式側も追従しているか確認しておくと安心です。

使えない関数を使っている

3D参照に対応しているのは、主に合計・統計系の関数です。

  • 使える:SUM AVERAGE COUNT COUNTA MAX MIN PRODUCT STDEV など
  • 使えない:IF SUMIF SUMIFS COUNTIF VLOOKUP XLOOKUP FILTER など

条件付きの集計や検索を複数シートに対して行いたい場合は、3D参照ではなく、各シートのデータを1枚にまとめてから集計する方が確実です。

まとめ

  • 3D参照(串刺し集計)を使うと、=SUM(月別1:月別3!B2:B10) の形で複数シートの同じセルをまとめて合計できる
  • 集計されるのはタブの並び順で開始シートと終了シートに挟まれたシート。名前の番号順ではない
  • 新しいシートは開始と終了の内側に挿入すれば、数式を直さずに集計へ入る。外側に作ると、エラーは出ないまま合計から漏れる
  • 条件付き集計(SUMIFなど)や検索系の関数は3D参照に対応していない

各シートのレイアウトさえそろえておけば、月次・部門別・拠点別の集計はぐっと楽になります。

関連記事

サンプルファイル

記事中で使用しているサンプルデータはこちらからダウンロードできます。

タイトルとURLをコピーしました