~基本から応用まで徹底解説~
こんにちは、Excel愛好家の皆さん!
Excelでデータを管理・集計するとき、SUM関数はまさに魔法のような存在。しかし、基本の合計計算だけではありません。条件付きの合計、動的な範囲指定、複雑なロジックを実現できる応用技まで、使い方を知れば知るほどあなたの作業はグッと効率的になります。
この記事では、初心者から上級者までが楽しみながら学べるように、実践的な例とともに
7つのSUM関数テクニックを徹底解説します。早速、Excelの世界に飛び込んでみましょう!
1. 基本のSUM関数でシンプルな合計をマスターしよう
まずはExcelの基礎中の基礎!数値の合計を出すための最もシンプルな方法です。
✅ SUM関数の基本構文
=SUM(範囲)
例えば、下記の例ではA1からA10までのセルの数値を合計します:
=SUM(A1:A10)
Tip: セル範囲をドラッグして選択すると、Excelが自動で範囲を入力してくれるので、入力ミスが減ります!
2. SUMIF関数で条件付き合計に挑戦!
「特定の条件を満たすセルだけ合計したい…」そんなときに大活躍なのがSUMIF関数です。
✅ SUMIF関数の構文
=SUMIF(範囲, 条件, [合計範囲])
例として、A1からA10のセルで「100以上」の行に対応するB列の値を合計する場合:
=SUMIF(A1:A10, ">=100", B1:B10)
この関数を使えば、条件に合致するデータだけを瞬時に集計できます。
活用例: 売上データから、特定の金額以上の売上だけをピックアップして合計する。
3. SUMIFS関数で複数条件の壁を突破!
1つの条件だけでなく、複数の条件に合わせた集計が必要な場合は、SUMIFS関数が最適です。
✅ SUMIFS関数の構文
=SUMIFS(合計範囲, 条件範囲1, 条件1, 条件範囲2, 条件2, ...)
例えば、商品カテゴリーが「食品」で、かつ売上が1000円以上のデータに対応するC列の値を合計する場合:
=SUMIFS(C1:C10, A1:A10, "食品", B1:B10, ">1000")
活用例: 部署ごとの売上や特定カテゴリーの売上集計に利用可能。複数の条件を組み合わせることで、より正確なデータ分析が実現します。
=SUMIFS(C1:C10, A1:A10, $E$1, B1:B10, ">1000")
応用例: このように、引数としてセル参照を使うことで、ドロップダウンリスト(データ検証)で選択した内容を動的に集計に反映させることができます。
※E1セルに条件に使用したいドロップダウンリストの設定が必要。
4. SUMPRODUCT関数で高度な条件付き合計を実現!
SUMIFS関数では対応しきれない複雑な条件にも柔軟に対応できるのがSUMPRODUCT関数。
配列計算の力を借りて、自由自在に条件を設定できます。
✅ SUMPRODUCT関数の構文
=SUMPRODUCT((条件1)*(条件2)*合計範囲)
例として、A列が「食品」で、B列の値が1000以上のデータに対して、C列の値を合計する場合:
=SUMPRODUCT((A1:A10="食品")*(B1:B10>1000)*C1:C10)
Tip: 複数の条件を掛け合わせることで、AND条件が実現できます。条件の掛け算の結果が1(真)になった場合のみ合計対象となります。
A1:A10="食品"のところで「食品かどうか」を TRUE/FALSE(または 1/0)で判定B1:B10>1000のところで 1000 を超えているかを TRUE/FALSE(または 1/0)で判定- それらを掛け合わせてから、最後に
C1:C10を掛け合わせ、すべてを合計している
という計算です。
いわゆる「条件に合った行に限定して C1:C10 の値を合計する」という仕組みで、SUMIFS(C1:C10, A1:A10, "食品", B1:B10, ">1000") とほぼ同じ意味合いになります。
詳しくいうと、(A1:A10="食品") と (B1:B10>1000) は条件を満たすセルが TRUE(数値的には 1)、満たさないセルが FALSE(数値的には 0)として扱われ、行ごとに掛け算された結果だけが C1:C10 の数値に反映されます。
- ある行が両方の条件を満たせば
(1)*(1)*C列の値がそのまま加算される - どちらか1つでも条件を満たさない(0)なら、その行の掛け算は 0 となり加算されない
配列同士を掛け算して合計を求めることで、特定の条件に合った値の合計が得られます。
5. SUBTOTAL関数でフィルター後のデータもスマートに集計!
フィルターで一部のデータを非表示にしている場合、通常のSUM関数は非表示のセルも合計してしまいます。そんなときはSUBTOTAL関数を使いましょう!
✅ SUBTOTAL関数の構文
=SUBTOTAL(引数, 範囲)
例として、A1からA10までの範囲でフィルター後の表示されているデータのみを合計する場合:
=SUBTOTAL(9, A1:A10)
活用例: 引数に9を入力することでA1:A10までの表示セルを合計する。
| 引数(フィルター連動) | 集計方法 | 引数(手動非表示のみ) |
|---|
| 1 | AVERAGE(平均) | 101 |
| 2 | COUNT(数値の個数) | 102 |
| 3 | COUNTA(空白以外の個数) | 103 |
| 4 | MAX(最大値) | 104 |
| 5 | MIN(最小値) | 105 |
| 6 | PRODUCT(積) | 106 |
| 7 | STDEV(標本標準偏差) | 107 |
| 8 | STDEVP(母集団標準偏差) | 108 |
| 9 | SUM(合計) | 109 |
| 10 | VAR(標本分散) | 110 |
| 11 | VARP(母集団分散) | 111 |
通常は「フィルター連動」の方を使用します。
6. OFFSET関数との組み合わせで動的なSUMを実現!
データの追加・削除に伴い、毎回集計範囲を変更するのは大変。そこで登場するのがOFFSET関数です。これにより、データ数の変動に合わせた自動調整が可能になります。
✅ OFFSETを使った動的SUMの構文
=SUM(OFFSET(A1, 0, 0, COUNTA(A:A), 1))
この式は、A列内のデータ数に応じて、SUM関数の対象範囲が自動的に変化します。
Tip: COUNTA関数は空でないセルの数をカウントするので、データの追加に合わせて自動更新される点が大きな魅力です。
7. 配列関数とFILTER関数でシンプル&スマートな合計計算(Excel 365/2021向け)
最新バージョンのExcelでは、動的配列と新しい関数を活用することで、これまで以上にスマートに合計計算が行えます。特にFILTER関数と組み合わせることで、条件に応じた集計がシンプルな数式で実現できます。
✅ FILTER関数とSUMの組み合わせの構文
=SUM(FILTER(B1:B10, A1:A10="食品"))
この例では、A列が「食品」に該当するB列の数値だけを抽出し、その合計を求めます。
活用例: 商品カテゴリーごとの売上合計や、特定条件に基づくデータ抽出と集計を、簡潔な数式で実現。
最新のExcel機能を活用して、より効率的なデータ処理を実現しましょう!
まとめ
今回の記事では、ExcelのSUM関数の基本から応用まで、計7つのテクニックを詳しくご紹介しました。各関数の特性と活用例を押さえることで、単なる合計作業から一歩進んだデータ分析が可能になります。
- 基本のSUM関数: シンプルな合計計算。
- SUMIF/SUMIFS関数: 条件付き合計で必要なデータを抽出。
- SUMPRODUCT関数: 複雑な条件を掛け合わせた集計。
- SUBTOTAL関数: フィルター適用時にも正確な集計。
- OFFSET関数: 動的に範囲を調整する自動集計。
- 配列関数とFILTER関数: 最新Excelでシンプルに実現する高度な集計。
ぜひ、これらの関数を実際の業務や学習に取り入れて、Excelスキルをさらに向上させてください。次回はさらに深いExcelのテクニックや、実践的なデータ分析方法についてご紹介する予定です。お楽しみに!



コメント