ホーム / 関数 / Excel SUMIF・SUMIFS 関数の使い方
数学 Excel + Google スプレッドシート

Excel SUMIF・SUMIFS 関数の使い方

SUMIF(サムイフ)は、条件に合うセルだけを合計する Excel(エクセル)の関数です。地域別の売上、カテゴリ別の小計、「100 より大きい金額だけ合計」といった集計を1つの数式で行えます。3つの引数、条件の書き方、条件が複数あるときの SUMIFS(引数の順番が逆になります)を、例題と練習問題で身につけましょう。

SUMIF 関数の構文と3つの引数

=SUMIF(範囲, 検索条件, [合計範囲])

SUMIF は、範囲の中から検索条件に合うセルを探し、合計範囲の同じ位置にある数値を足します。「条件で絞り込む」と「合計する」を1つの数式で行えます。

1 範囲(range)
必須

条件を調べるセル範囲です(地域の列 A2:A7 など)。SUMIF はこの範囲のセルを1つずつ検索条件と比べます。

2 検索条件(criteria)
必須

合計するセルの条件です。文字列はダブルクォーテーションで囲み("東京")、数値は囲みません(100)。比較演算子も全体を文字列にします(">100")。セルとは & でつなげます(">"&D1)。ワイルドカード("東京*")も使えます。

3 合計範囲(sum_range)
省略可

実際に足す数値のセル範囲です(売上の列 B2:B7 など)。省略すると、範囲そのものが合計されます(B2:B20 の 100 より大きい数だけを合計する場合など)。

SUMIF の基本例題:地域ごとの売上を合計

A 列が地域、B 列が売上です。この SUMIF の基本例題では、「東京」の行だけを合計します。

地域売上
東京1200
大阪800
東京950
福岡600
東京400
=SUMIF(A2:A6, "東京", B2:B6)

SUMIF は A2:A6 から「東京」の行を探し、B2:B6 の同じ行の売上を足します:1200 + 950 + 400 = 2550。文字列の条件は、必ず半角のダブルクォーテーション(")で囲みます。

SUMIFS の例題:地域と商品の2つの条件で合計

同じ表に商品の列を足しました。この SUMIFS の例題では、「東京」で「ノート」の売上だけを合計します。条件が2つなので SUMIFS を使い、合計する範囲を最初に書きます。

地域商品売上
東京ノート1200
大阪ノート800
東京ペン950
東京ノート400
=SUMIFS(C2:C5, A2:A5, "東京", B2:B5, "ノート")

SUMIFS は、地域が「東京」かつ商品が「ノート」の行だけを合計します:1200 + 400 = 1600。合計する範囲(C2:C5)は最初の引数です。SUMIF と同じ順番で書くと、エラーにならずに 0 などの間違った値が返ります。

Excel で合計を出す関数の使い分け(SUM・SUMIF・SUMIFS・SUBTOTAL)

Excel の合計の出し方は、「何を合計したいか」で関数が変わります。条件なしなら SUM、条件が1つなら SUMIF、条件が2つ以上なら SUMIFS を選びます。

やりたいこと使う関数数式の例
範囲をそのまま合計するSUM=SUM(B2:B6)
条件が1つのセルだけ合計するSUMIF=SUMIF(A2:A6, "東京", B2:B6)
条件が2つ以上のセルだけ合計するSUMIFS=SUMIFS(C2:C5, A2:A5, "東京", B2:B5, "ノート")
フィルターで表示中の行だけ合計するSUBTOTAL=SUBTOTAL(109, B2:B6)

オートフィルターで絞り込んだ結果だけを合計したいときは、SUM ではなく SUBTOTAL の 109 を使います。SUM は非表示の行も含めて合計してしまいます。

SUMIF の条件の書き方(以上・未満・ワイルドカード・セル参照)

条件(検索条件)には、文字列・数値・比較演算子・ワイルドカードを指定できます。比較演算子は、数式の中では文字列として扱うため、必ず " で囲みます。

条件書き方意味
ちょうど 100 のセル100数値はそのまま書く
100 以上のセル">=100"比較演算子は " で囲む
「東京」以外のセル"<>東京"<> は「等しくない」
「東京」で始まるセル"東京*"* は任意の文字列(0文字以上)
「東京」を含むセル"*東京*"前後に * を付ける
D1 のしきい値より大きいセル">"&D1演算子とセルを & でつなぐ

D1 の金額より大きい売上だけを合計する(合計範囲を省略)

=SUMIF(B2:B20, ">"&D1)

第3引数(合計範囲)を省略すると、第1引数の範囲そのものが合計されます。条件の範囲と合計する範囲が同じとき(「100 より大きい数だけ合計」など)に便利です。

SUMIFS で複数条件の合計を出す(AND と OR)

SUMIFS に並べた条件は、すべてに当てはまる行だけが合計される AND 条件です。たとえば期間を指定するときは、「以上」と「以下」の条件を同じ範囲に2つ書きます。

日付が 2026/4/1 以上 2026/4/30 以下の売上を合計する

=SUMIFS(C2:C100, A2:A100, ">="&DATE(2026,4,1), A2:A100, "<="&DATE(2026,4,30))

「東京または大阪」のような OR 条件は、SUMIFS を足し算するか、配列定数と SUM を組み合わせます。

地域が「東京」または「大阪」の売上を合計する

=SUM(SUMIFS(B2:B6, A2:A6, {"東京", "大阪"}))

条件に合うセルの「個数」を数えたいときは、COUNTIF と COUNTIFS を使います。

SUMIF でつまずきやすい4つの落とし穴

1. SUMIFS は引数の順番が逆(試験でもよく問われる)

SUMIF は「条件が先、合計範囲が後」ですが、SUMIFS は「合計範囲が先、条件が後」です:=SUMIFS(合計範囲, 範囲1, 条件1, …)。順番を間違えてもエラーにならず、0 などの間違った値が返るので、気づきにくいミスです。

2. 検索条件のダブルクォーテーション

文字列の条件は "東京" のように囲みます。数値だけの条件(100)は囲みません。比較演算子は全体が1つの文字列で、">=100" と書きます。>100 をそのまま書くと構文エラーです。

3. 大文字・小文字の区別なし、ワイルドカードで多く合計してしまう

SUMIF は大文字と小文字を区別しません(north と North は同じ)。また "東京*" は、東京都や東京支店のような「東京」で始まる値すべてに一致します。意図しない値が混ざるときは、完全一致の条件にするか、SUMPRODUCT で検算してください。

4. 合計が 0 になる3つの原因

条件の前後に見えないスペースがある(TRIM で除去)、合計範囲の数値が文字列になっている(VALUE で変換)、範囲と合計範囲の開始位置がずれている。どれもエラーにならず、0 が返るだけです。

条件付き合計の比較:SUMIF・SUMIFS・SUMPRODUCT

SUMIF

条件が1つの合計の基本です。書き方が最も短く、読みやすい関数です。「地域別」「カテゴリ別」の集計は、まず SUMIF を考えます。

SUMIFS

条件が2つ以上のときの正解です。「先に合計範囲、後に条件」と覚えましょう。SUMIF とは逆の順番です。Excel 2003 以前のファイルでは使えません。

SUMPRODUCT

どんな条件にも対応できる万能の関数です。=SUMPRODUCT((A2:A7="東京")*B2:B7) のように、条件を掛け算で表します。複雑な条件や、加重平均の計算にも使えます。

Excel と Google スプレッドシートの違い・応用

Microsoft Excel (365 / Desktop)

Excel の SUMIF は、別のシートも参照できます:=SUMIF(Sheet2!A:A, "東京", Sheet2!B:B)。範囲の引数には配列定数を指定できません。複数条件の集計は、SUMIFS か SUMPRODUCT を使ってください。

Google スプレッドシート

Google スプレッドシートでも書式は同じで、=ARRAYFORMULA(SUMIF(...)) で複数の条件をまとめて集計することもできます。=QUERY() でグループごとの集計も1つの数式でできますが、一般的な集計は SUMIF・SUMIFS が基本です。

SUMIF を練習しよう:地域ごとの売上を合計

下のロックされたシートに数式を入力すると、すぐに合否を確認できます。別ページの全画面表示で練習することもできます。

練習問題のページを開く
問題文
ヒント 0/4
模範解答 2
–
テストケース
1
2
3
リセット
提出
fx
A
B
C
D
E
F
G
1
2
3
4
5
6
7
8
9
10
インタラクティブなスプレッドシートを読み込み中...
セルと数式の計算エンジンを準備しています
○ 準備完了 ハイライトされたセルに数式を入力し、「提出」を押してください。

ほかの条件付き合計の練習問題

SUMIF、SUMIFS による複数条件の合計など、実務に近い場面で練習できます。

よくある質問

SUMIF とは何ですか?

SUMIF(サムイフ)は、条件に合うセルだけを合計する Excel(エクセル)の関数です。書式は =SUMIF(範囲, 検索条件, [合計範囲]) で、「地域が東京の売上だけ合計する」といった集計に使います。

SUMIF の使い方を教えてください。

=SUMIF(A2:A7, "東京", B2:B7) のように、条件を調べる範囲(A2:A7)、条件("東京")、合計する範囲(B2:B7)の順に指定します。条件が文字列や比較演算子のときは、ダブルクォーテーションで囲みます。

SUMIF と SUMIFS の違いは何ですか?

SUMIF は条件を1つしか指定できませんが、SUMIFS は2つ以上指定できます。引数の順番も逆で、SUMIF は「範囲, 条件, 合計範囲」、SUMIFS は「合計範囲, 範囲1, 条件1, 範囲2, 条件2」です。順番を間違えてもエラーにならず、0 などの間違った値が返ります。

SUMIF で複数条件を指定するにはどうしますか?

SUMIFS 関数を使います。=SUMIFS(C2:C5, A2:A5, "東京", B2:B5, "ノート") のように、合計範囲の後ろに「範囲, 条件」の組を必要な数だけ並べます。すべての条件に当てはまる行だけが合計されます。「または」の条件は、SUMIFS を足し算してください。

SUMIF で「〜以上」「〜より大きい」の条件を指定するには?

比較演算子を含めて、ダブルクォーテーションで囲みます。=SUMIF(B2:B20, ">100") は 100 より大きい数だけを合計します。しきい値がセルに入っているときは、=SUMIF(B2:B20, ">"&D1) のようにセル参照とつなぎます。

SUMIF の合計が 0 になるのはなぜですか?

条件の文字列にダブルクォーテーションがない、合計範囲の数値が文字列になっている、条件の前後に余分なスペースがある(TRIM 関数で除去できます)、範囲と合計範囲の大きさや開始位置がずれている、のどれかであることがほとんどです。SUMIF は一致するセルがなくてもエラーにならず、0 を返します。

SUMIF にワイルドカードは使えますか?

使えます。* は任意の文字列、? は任意の1文字を表します。たとえば =SUMIF(A2:A20, "東京*") は「東京」で始まる地域の売上を合計します。ワイルドカードは半角で入力し、英字の大文字と小文字は区別されません。

Google スプレッドシートでも SUMIF は使えますか?

使えます。書式は Excel と同じです。=ARRAYFORMULA(SUMIF(...)) で複数の条件をまとめて集計することもできます。