COUNTIFS・SUMIFS完全ガイド ― 複数条件の件数カウント・合計集計
「東京支店かつ営業部の件数は?」「A商品で売上10万以上の合計は?」といった複数条件の集計を、VBA不要・FILTER不要で実現する方法をすべて解説します。Excel 2016・2019でも完全動作します。
💡 まず整理:COUNTIF系・SUMIF系の使い分け
| 関数 | やること | 条件数 |
|---|---|---|
| COUNTIF | 1条件に合う 件数 をカウント | 1つ |
| COUNTIFS | 複数条件に合う 件数 をカウント | 127条件まで |
| SUMIF | 1条件に合う行の 合計 を集計 | 1つ |
| SUMIFS | 複数条件に合う行の 合計 を集計 | 127条件まで |
| AVERAGEIFS | 複数条件に合う行の 平均 を集計 | 127条件まで |
| MAXIFS / MINIFS | 複数条件に合う行の 最大・最小 を集計 | Excel 2019以降 |
🔢 COUNTIFS の基本構文
=COUNTIFS(条件範囲1, 条件1, 条件範囲2, 条件2, ...)
サンプルデータ:売上明細
| A: 支店 | B: 部署 | C: 売上 |
|---|---|---|
| 東京 | 営業部 | 120,000 |
| 東京 | 企画部 | 85,000 |
| 大阪 | 営業部 | 200,000 |
| 東京 | 営業部 | 95,000 |
| 大阪 | 企画部 | 110,000 |
例①:東京支店かつ営業部の件数
=COUNTIFS(A:A, "東京", B:B, "営業部")
// → 2(1行目と4行目)
例②:条件をセル参照で指定(より実用的)
// E1に「東京」、F1に「営業部」が入力されている場合
=COUNTIFS(A:A, E1, B:B, F1)
💡 条件をセル参照にする利点
集計条件をセルに入力して参照することで、条件を変えるたびに数式を書き直さずに済む「動的な集計」が作れます。
集計条件をセルに入力して参照することで、条件を変えるたびに数式を書き直さずに済む「動的な集計」が作れます。
例③:数値の比較演算子(文字列で指定)
// 売上が10万以上の件数
=COUNTIFS(C:C, ">=100000")
// セル参照と組み合わせる場合(E1に100000が入力)
=COUNTIFS(C:C, ">="&E1)
➕ SUMIFS の基本構文
=SUMIFS(合計範囲, 条件範囲1, 条件1, 条件範囲2, 条件2, ...)
⚠️ SUMIFとSUMIFSは引数の順番が違う!
SUMIF:
SUMIFS:
複数条件を使う場合はSUMIFSに統一することをお勧めします。
SUMIF:
=SUMIF(条件範囲, 条件, 合計範囲)(合計範囲が最後)SUMIFS:
=SUMIFS(合計範囲, 条件範囲1, 条件1...)(合計範囲が最初)複数条件を使う場合はSUMIFSに統一することをお勧めします。
例①:東京支店の売上合計
=SUMIFS(C:C, A:A, "東京")
// → 300,000(120,000 + 85,000 + 95,000)
例②:東京支店かつ営業部の売上合計
=SUMIFS(C:C, A:A, "東京", B:B, "営業部")
// → 215,000(120,000 + 95,000)
例③:期間を指定した合計(日付の範囲検索)
// D列が日付列の場合、2026年4月の売上合計
=SUMIFS(C:C, D:D, ">="&DATE(2026,4,1), D:D, "<="&DATE(2026,4,30))
// E1に開始日・F1に終了日を入力しておく場合
=SUMIFS(C:C, D:D, ">="&E1, D:D, "<="&F1)
📊 応用:クロス集計表を作る
「縦軸=支店、横軸=部署」のクロス集計表を、COUNTIFS・SUMIFSで一気に作る方法です。
// 集計表のレイアウト:
// 行ヘッダー(E列)に支店名、列ヘッダー(F1〜H1)に部署名が入っている
// セルF2の数式(下・右にコピーできる形):
=SUMIFS($C:$C, $A:$A, $E2, $B:$B, F$1)
💡 混合参照を使ってコピーを効率化
この混合参照の組み合わせで、1つの数式を全セルにコピーするだけでクロス集計表が完成します。
$E2 → E列は固定・行は変動(下コピーで支店が変わる)F$1 → 列は変動・1行は固定(右コピーで部署が変わる)この混合参照の組み合わせで、1つの数式を全セルにコピーするだけでクロス集計表が完成します。
🔧 よく使う応用パターン集
① ワイルドカードで部分一致
// 「東京」を含む支店名すべてをカウント(東京本社・東京支店など)
=COUNTIFS(A:A, "*東京*")
// 「営業」で終わる部署名
=COUNTIFS(B:B, "*営業")
② 空白・非空白のカウント
// C列が空白(未入力)の件数
=COUNTIFS(C:C, "")
// C列に何か入力されている件数
=COUNTIFS(C:C, "<>"&"")
③ AVERAGEIFS で複数条件の平均
// 東京支店・営業部の平均売上
=AVERAGEIFS(C:C, A:A, "東京", B:B, "営業部")
④ MAXIFS・MINIFS(Excel 2019以降)
// 東京支店の最高売上(Excel 2019以降)
=MAXIFS(C:C, A:A, "東京")
// Excel 2016の場合:配列数式で代替
=MAX(IF(A2:A100="東京", C2:C100)) ← Ctrl+Shift+Enter
⚠️ MAXIFS/MINIFSはExcel 2019から
Excel 2016 にはMAXIFS・MINIFSが存在しません。2016では上記のMAX+IF配列数式(Ctrl+Shift+Enter)で代替してください。
Excel 2016 にはMAXIFS・MINIFSが存在しません。2016では上記のMAX+IF配列数式(Ctrl+Shift+Enter)で代替してください。