概要
SUMIFは「条件を満たすセルだけの合計」を出す関数です。1つの条件で範囲を絞り込み、その対応する値(または同じ範囲)を合計します。例えば「地域が東京の売上合計」や「100以上の値だけ合計」など、対象を限定した集計に最適です。
基本の使い方
- 書式:
- 範囲: 条件を判定するセル範囲
- 条件: “東京”、”>=100” のような文字列やセル参照
- 合計範囲: 合計したい値の範囲(省略時は“範囲”を合計)
=SUMIF(範囲, 条件, [合計範囲])
- 単純な条件で合計(同じ列を判定・合計):
- 説明: A列が100以上のセルだけ合計します(合計範囲の省略例)。
=SUMIF(A2:A100, ">=100")
- 判定列と合計列を分ける(よく使う形):
- 説明: A列が「東京」の行について、B列の値を合計。
=SUMIF(A2:A100, "東京", B2:B100)
具体例
- 例1: 文字一致で合計(地域が東京)
- ポイント:
- 大文字小文字: 無視されます。
- 部分一致: ワイルドカードで可能(例は下記)。
- ポイント:
=SUMIF(A2:A200, "東京", B2:B200)
- 例2: 数値条件で合計(100以上)
- ポイント:
- 条件の記述: 比較演算子は文字列で書く(”>=100″)。
- ポイント:
=SUMIF(C2:C100, ">=100", C2:C100)
- 例3: 日付条件(2025年12月以降)
- ポイント:
- 日付は数値: 比較が可能。セル参照で渡すと安全。
- ポイント:
=SUMIF(D2:D200, ">=2025/12/1", E2:E200)
- 例4: ワイルドカード(部分一致)
- ポイント:
- “”:* 任意の文字列
- “?”: 任意の1文字
- ポイント:
=SUMIF(A2:A200, "*東京*", B2:B200)
作業効率のコツ
- セル参照で条件を渡す(可読性・メンテ性UP)
- 説明: H1に条件を入力しておけば式を直さず条件変更できます。
=SUMIF(A2:A200, H1, B2:B200)
- 絶対参照で範囲を固定してコピー
- 説明: 式を上下にコピーしても範囲がズレません。
=SUMIF($A$2:$A$200, H1, $B$2:$B$200)
- テーブル(構造化参照)で自動拡張
)- 説明: 行追加に自動追従。列名で読める式になります。
=SUMIF(売上[地域], "東京", 売上[金額])
よくあるつまずきと対策
- 合計範囲のサイズが“範囲”と違うと誤作動
- 原因: SUMIFは“範囲”と“合計範囲”の行数・列数が一致している必要あり。
- 対策: 範囲の行・列を揃える。テーブル参照だとミスが減る。
- 数値に見える文字列は条件判定から漏れることがある
- 原因: “123”が文字列扱いだと数値条件(>=など)で正しく判定されない。
- 対策: データを数値化(VALUE)、入力規則や書式で統一。
- 日付の比較がうまくいかない
- 原因: ロケールやテキスト日付の混在。
- 対策: 条件にセル参照を使う。
=SUMIF(D2:D200, ">=" & H1, E2:E200) // H1に正しい日付を入力
- フィルタ後も非表示を含めて合計してしまう
- 対策: 表示中だけ合計したいならSUBTOTALやSUMIFS+FILTER(動的配列環境)を検討。
- 複数条件にしたい
- 対策: SUMIFは1条件。複数条件はSUMIFSを使う(下記参照)。
応用テンプレート
- 複数条件の合計(SUMIFS)
- 説明: 地域=東京 かつ 月=12月の金額合計。
=SUMIFS(売上[金額], 売上[地域], "東京", 売上[月], "12月")
- 複数列を条件でまとめて合計(SUMで包む)
- 説明: 同じ条件で金額と送料を合計し、さらに合算。
=SUM(
SUMIF(売上[地域], "東京", 売上[金額]),
SUMIF(売上[地域], "東京", 売上[送料])
)
- ワイルドカードで接頭辞一致(商品コードが“AB-”で始まる)
=SUMIF(商品[コード], "AB-*", 商品[数量])
- しきい値をセルで指定(柔軟な比較) 閾値がH2(例: 100)
=SUMIF(C2:C100, ">=" & H2, C2:C100)
練習問題
- 問題1: A列が地域、B列が売上。地域が「東京」の売上合計をA201に表示してください。
- 解答例:
=SUMIF(A2:A200, "東京", B2:B200)
- 問題2: C列に金額。100以上の金額だけを合計してC201に表示してください。
- 解答例:
=SUMIF(C2:C200, ">=100", C2:C200)
- 問題3: D列が日付、E列が金額。H1の日付以降の金額合計をE201に表示してください。
- 解答例:
=SUMIF(D2:D200, ">=" & H1, E2:E200)
- 問題4: テーブル「売上」で、地域が「東京」かつ月が「12月」の金額合計をH2に表示してください(複数条件)。
- 解答例:
=SUMIFS(売上[金額], 売上[地域], "東京", 売上[月], "12月")
まとめ
- 1条件の合計:
=SUMIF(範囲, 条件, 合計範囲) - 文字・数値・日付の条件: 文字列で演算子を書くか、セル参照で柔軟に指定
- 複数条件:
SUMIFSを使う - テーブル参照: 読みやすく、行追加に強い
