「SUM関数だけでは、条件付きの合計ができない…」
このように困った経験はありませんか?

・特定の条件に合ったデータの合計を求めたい!
・特定の文字列で検索して、データを簡単に集計したい!



その場合は、ワークシート関数の「SUMIF関数」を
使用すると解決します!
このような条件付きの集計を簡単に実現できるのが「SUMIF関数」です!
エクセルで合計を求めるとき、「SUM関数」を使う人も多いですが、SUM関数は単純な合計しかできません。
一方、SUMIF関数 を使えば、「特定の条件を満たすデータ」だけを合計できます。
この記事では、そんなSUMIF関数について次の内容を初心者でも分かりやすく解説します。
ぜひ最後までご覧ください!
【 この記事の概要 】
よく使う度 | |
難しさ | |
覚えておくと安心度 |
関数を使いこなせれば、エクセル作業が何倍も速くなり、ミスも激減します。
でも、どこから始めればいいか迷いますよね?
初心者でもわかりやすくステップアップできる本があれば、効率的にスキルを伸ばせますよ!




この記事を見て「できるようになる」こと
- エクセルのSUMIF関数はどんなことができるのか?確認する。
- SUMIF関数の構成を習得する。
- SUMIF関数の具体的な使用例を確認する。
- SUMIF関数を使用するうえでの注意ポイントを理解する。
エクセルのSUMIF関数とは? | どんなことができるの?
エクセルの SUMIF関数 は、特定の条件に合うデータだけを合計する関数 です。
例えば、以下のような計算ができます。
- 売上100以上のデータの合計を求める
- 「商品A」だけの売上を合計する
- 指定した日付の売上合計を算出する
SUM関数では すべてのデータを合計 しますが、SUMIF関数を使えば必要なデータだけを合計 できます。
SUMIF関数の使い方をわかりやすく解説! 引数のルールと基本構成
SUMIF関数の構成


引数 | 説明 | 例 |
---|---|---|
範囲(必須) | 検索を行う範囲を指定 | A2:A10 (商品名のリスト) |
検索条件(必須) | 条件を指定(数値・文字列・ワイルドカード) | "商品A" ">=100" |
合計範囲(任意) | 合計する数値の範囲を指定 | B2:B10 (売上金額のリスト) |
より詳しい情報は、Microsoft公式 – SUMIF関数についてを参照してみてください。
SUMIF関数の条件設定の方法!数値・文字列・ワイルドカードの使い方
SUMIF関数では、検索条件に数値・文字列・ワイルドカードを指定できます。
以下のルールを知っておくと、様々なデータの合計が簡単にできます。
【 検索条件一覧 】
📌 数値の検索条件
条件 | 記載方法 | 意味 |
---|---|---|
○以上 | ">=100" | 100以上の値を対象 |
○以下 | "<=100" | 100以下の値を対象 |
○より大きい | ">100" | 100より大きい値を対象 |
○より小さい | "<100" | 100より小さい値を対象 |
○と等しい | "=100" | 100に等しい値を対象 |
○と異なる | "<>100" | 100ではない値を対象 |
- 条件を数値で指定するときは
" "
(ダブルクォーテーション)で囲む必要がある! 100
のように数値だけ入力すると、正しく動作しないことがあるので注意!
📌 文字列の検索条件
条件 | 記載方法 | 意味 |
---|---|---|
完全一致 | "商品A" | 「商品A」に一致するデータを対象 |
部分一致(ワイルドカード * 使用) | "商品*" | 「商品」で始まるデータを対象 |
部分一致(ワイルドカード ? 使用) | "A?C" | A○C(例:ABC, AXC)に一致するデータを対象 |
特定の文字を含む | "*商品*" | 「商品」を含むすべてのデータを対象 |
特定の文字を含まない | "<>商品A" | 「商品A」ではないデータを対象 |
"<>○○"
を使うと、特定の値を除外した合計が可能!"*"
や"?"
を使うと、部分一致の検索ができる!
📌 ワイルドカードを使う場合
条件 | 記載方法 | 意味 |
---|---|---|
「A」で始まるデータ | "A*" | Aで始まるすべてのデータを対象 |
「B」で終わるデータ | "*B" | Bで終わるすべてのデータを対象 |
「C」を含むデータ | "*C*" | Cを含むすべてのデータを対象 |
「*」を文字として扱う | "データ~*" | 「データ*」という文字列そのものを対象 |
「?」を文字として扱う | "ファイル~?" | 「ファイル?」という文字列そのものを対象 |
~
を使うと、*
や?
をワイルドカードではなく、普通の文字として検索できる!
SUMIF関数の使用例!条件別に合計する方法とエラー対策
それでは、SUMIF関数を使用した実践例を「3つ」紹介します。
使用例1 : 数値から検索して合計を求める
ある数値以上の合計を求める方法を紹介します。
例えば、このようなエクセルがあるとします。


「売上」が100以上のセルだけを合計したい場合、次のように記述します。
=SUMIF($B$2:$B$6,">=100")
引数の解説
計算結果
実際のエクセル画面は下記の通りとなります。


使用例2 : 文字列で検索を行い合計を求める
SUMIF関数は、文字列の条件を指定することもできます。
完全一致の文字列の場合
特定の商品の売上合計を求める場合を紹介します。
このようなエクセルがあったとします。


「商品A」のセルだけを合計したい場合、次のように記述します。
=SUMIF($A$2:$A$6,"商品A",$B$2:$B$6)
引数の解説
この例では、引数を下記の通り設定しています。


- 範囲 ⇒ $A$2:$A$6
- A2からA6までの範囲を検索します。
※このように範囲を指定する場合は、絶対参照($記号)を使用すると、オートフィルを行っても範囲がずれることはありません。
- A2からA6までの範囲を検索します。
- 検索条件 ⇒ ”商品A”
- 範囲内のセルから、”商品A”を検索します。
数値を検索する場合の、条件指定方法については、「📌 文字列の検索条件」で解説しています。
- 範囲内のセルから、”商品A”を検索します。
- 合計範囲 ⇒ $B$2:$B$6
- 検索条件でヒットした行のB2からB6までの値を合計します。
範囲と同じく、絶対参照($記号)としています。
- 検索条件でヒットした行のB2からB6までの値を合計します。
計算結果
実際のエクセル画面は下記の通りとなります。


使用例3 : 文字列を部分一致で検索し合計を求める
ワイルドカードを使って、文字列の部分一致を検索することも可能です。
このようなエクセルがあったとします。


「商品名」に「A」を含むすべての売上を合計するには、次のように記述します。
=SUMIF($A$2:$A$6,"商品*A*",$B$2:$B$6)
引数の解説
この例では、引数を下記の通り設定しています。


- 範囲 ⇒ $A$2:$A$6
- A2からA6までの範囲を検索します。
このように範囲を指定する場合は、絶対参照($記号)を使用すると、オートフィルを行っても範囲がずれることはありません。
- A2からA6までの範囲を検索します。
- 検索条件 ⇒ ”商品*A*”
- 商品名に「A」を含むものを検索します。
*はワイルドカードといい、任意の文字列を表します。
今回は「商品」という文字列の後に「A」が付くものを検索します。
具体的には「商品A~」や「商品~A」になります。
ワイルドカードを検索する場合の、条件指定方法については、「📌 ワイルドカードを使う場合」で解説しています。
- 商品名に「A」を含むものを検索します。
- 合計範囲 ⇒ $B$2:$B$6
- 検索条件でヒットした行のB2からB6までの値を合計します。
範囲と同じく、絶対参照($記号)としています。
- 検索条件でヒットした行のB2からB6までの値を合計します。
計算結果
実際のエクセル画面は下記の通りとなります。


SUMIF関数のエラー対策!合計が合わない・うまくいかないときの解決法
SUMIF関数を使っていると、「合計が合わない!」「うまく動作しない!」 といった問題に直面することがあります。
ここでは、SUMIF関数を使う際によくあるエラーや注意点 をわかりやすく解説し、解決方法を紹介します。
SUMIF関数の合計が合わない原因と対策
「SUMIF関数を使ったのに合計が合わない!」という場合、以下の原因が考えられます。
原因 | チェックポイント | 解決策 |
---|---|---|
検索条件の書き方が間違っている | "100" ではなく 100 になっていないか? | 数値の場合は ">=100" のように "" で囲む |
データが文字列として認識されている | 数値が左寄せになっていないか? | =VALUE(セル) で数値に変換 |
ワイルドカードの誤使用 | "A*" の * の位置が適切か? | "*A*" で部分一致を確認 |
📌 注意1. 条件の書き方を間違えていないか?
SUMIF関数の検索条件は、適切に記述しないと動作しません。
数値条件を書くときのミスが多いので注意しましょう!
❌ 間違った例
=SUMIF(A2:A10, >=100, B2:B10) ← エラー
✅ 正しい書き方
=SUMIF(A2:A10, ">=100", B2:B10)
💡 ポイント
- 数値の条件(
>
,<
,=
など)は ダブルクォーテーション""
で囲む必要があります "100"
のように" "
で囲むと文字列として扱われるので注意
📌 注意2. 数値が文字列として認識されていないかチェック!
SUMIF関数を使用する際、数値データが「文字列」として入力されていると、正常に動作しません。
✅ 問題の確認方法
セルのデータが「文字列」として扱われていないか?次の方法で確認を行いましょう。
- 数値が左寄せになっているか?
- エクセルでは、数値は通常「右寄せ」、文字列は「左寄せ」で表示されます。
数値が左寄せになっている場合、文字列として認識されている可能性が高いです。 - 「’123」など、先頭に「’(シングルクォーテーション)」が入っている場合も、文字列として扱われます。
セル内で「’123」のように表示されていたら、シングルクォーテーションを削除して数値として認識するようにしましょう。
- エクセルでは、数値は通常「右寄せ」、文字列は「左寄せ」で表示されます。
- 関数を使用してチェックする
=ISTEXT(A1)
を入力し、「TRUE」が返ってきた場合、そのセルのデータは「文字列」として扱われています。
✅ 解決策
- VALUE関数を使って、文字列を数値に変換する
=VALUE(A1)
このように「Value関数」を使用すると、セル「A1」に入力された「文字列の数値」を数値に変換することができます。
📌 注意3. 複数条件を指定する場合はSUMIFS関数を使おう!
SUMIF関数では、1つの条件しか指定できません。
複数の条件を自由に組み合わせて合計を求めたい場合は、SUMIFS関数を使いましょう。


✅ 使用例 : 「商品A」でかつ「売上100以上」の合計を求める
=SUMIFS(B2:B10, A2:A10, "商品A", B2:B10, ">=100")


- 範囲 ⇒ B2:B10
- 売上金額を合計する範囲を指定します。
- 条件範囲1 ⇒ A2:A10
- 条件1を適用する範囲を指定します。
- 条件1 ⇒ ”商品A”
- この条件を条件範囲1の中から検索します。
- 条件範囲1 ⇒ A2:A10
- 条件2を適用する範囲を指定します。
- 条件2 ⇒ ”>=100″
- この条件を条件範囲2の中から検索します。
💡 ポイント
- SUMIF関数では1つの条件しか指定できないが、SUMIFS関数なら2つ以上の条件を設定できます!
- 複数の条件を設定する場合、SUMIFS関数の「最初の引数」は合計範囲になります。
SUMIFとは違うので注意しましょう。
📌 注意4. ワイルドカード( や ?)の使用ミス*
SUMIF関数では、ワイルドカードを使うことで部分一致検索が可能ですが、誤用すると正しく動作しません。
✅ 正しいワイルドカードの使い方
条件 | 検索条件 | 意味 |
---|---|---|
「商品A」で始まるデータ | "商品A*" | 商品A1, 商品A2 などを対象 |
「商品」を含むデータ | "*商品*" | 商品A, 新商品B などを対象 |
「商品?」で一致するデータ | "商品?" | 商品A, 商品B(1文字違いのデータ) |
💡 ポイント
- 「*」を文字として使いたい場合は「~」をつけましょう。
=SUMIF(A2:A10, "データ~*", B2:B10) ← 「データ*」を検索
この記事のまとめ
SUMIF関数は、特定の条件に合うデータだけを合計できる便利な関数 です。
この記事では、SUMIF関数の基本的な使い方から、エラー対策、SUMIFS関数との違い まで詳しく解説しました。
ポイントのおさらい
- ✅ SUMIF関数の基本
- SUMIF関数は、「範囲」「検索条件」「合計範囲」の3つの引数を指定することで、特定の条件に一致するデータの合計を求めることができます。
⇒ 「SUMIF関数の使い方をわかりやすく解説! 引数のルールと基本構成」をもう一度見る。
- SUMIF関数は、「範囲」「検索条件」「合計範囲」の3つの引数を指定することで、特定の条件に一致するデータの合計を求めることができます。
- ✅ SUMIF関数の検索条件
- SUMIF関数では、数値・文字列・ワイルドカード を使って検索条件を指定できます。
⇒ 「SUMIF関数の条件設定の方法!数値・文字列・ワイルドカードの使い方」をもう一度見る。
- SUMIF関数では、数値・文字列・ワイルドカード を使って検索条件を指定できます。
- ✅ SUMIF関数の実践例
- SUMIF関数を使うことで、次のような集計が簡単にできます。
- 売上100以上のデータの合計を求める
- 「商品A」の売上合計を求める
- ワイルドカードを使った部分一致検索をする
⇒「SUMIF関数の実践例:条件別に合計する方法をご紹介」をもう一度見る。
- SUMIF関数を使うことで、次のような集計が簡単にできます。
- ✅ SUMIF関数がうまくいかない原因と対策
- SUMIF関数の結果が「合計が合わない!」「うまく動作しない!」となる場合、次のポイントをチェックしましょう。
- 合計範囲を指定していないと、意図しない結果が出ることがある!
- 数値が文字列として認識されていると、条件が適用されない!
- 検索条件の書き方が間違っていると、正しく計算できない!
⇒ 「SUMIF関数のエラー対策!合計が合わない・うまくいかないときの解決法」をもう一度見る。
- SUMIF関数の結果が「合計が合わない!」「うまく動作しない!」となる場合、次のポイントをチェックしましょう。
さらに学ぶために
SUMIF関数をより活用するために、関連するExcel関数やVBAを学ぶのもおすすめです!

