SUMIF関数の使い方をわかりやすく解説!条件付き合計とエラー対策【Excel】

当ページのリンクには広告 (Amazonアソシエイト含む) が含まれています。
SUMIF関数とは?説明

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


・特定の条件に合ったデータの合計を求めたい!

SUMIF関数の説明1

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

SUMIF関数の説明2

その場合は、ワークシート関数の「SUMIF関数」を
使用すると解決します!


このような条件付きの集計を簡単に実現できるのが「SUMIF関数」です!

エクセルで合計を求めるとき、「SUM関数」を使う人も多いですが、SUM関数は単純な合計しかできません。
一方、SUMIF関数 を使えば、「特定の条件を満たすデータ」だけを合計できます。

この記事では、そんなSUMIF関数について次の内容を初心者でも分かりやすく解説します。
ぜひ最後までご覧ください!


【 この記事の概要 】

よく使う度
難しさ
覚えておくと安心度

関数を使いこなせれば、エクセル作業が何倍も速くなり、ミスも激減します。

でも、どこから始めればいいか迷いますよね?

初心者でもわかりやすくステップアップできる本があれば、効率的にスキルを伸ばせますよ!

目次

この記事を見て「できるようになる」こと

エクセルのSUMIF関数とは? | どんなことができるの?

エクセルの SUMIF関数 は、特定の条件に合うデータだけを合計する関数 です。
例えば、以下のような計算ができます。

  • 売上100以上のデータの合計を求める
  • 「商品A」だけの売上を合計する
  • 指定した日付の売上合計を算出する

SUM関数では すべてのデータを合計 しますが、SUMIF関数を使えば必要なデータだけを合計 できます。

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")

引数の解説

この関数を解説
SUMIF関数の説明

  • 範囲 ⇒ $B$2:$B$6
    • B2からB6までの範囲を検索します。
      ※このように範囲を指定する場合は、絶対参照($記号)を使用すると、オートフィルを行っても範囲がずれることはありません。
  • 検索条件 ⇒ ” >=100 “
    • 100以上を検索します。
      検索条件は、” ” (ダブルクォーテーション)で囲う必要があります。
      数値を検索する場合の、条件指定方法については、「📌 数値の検索条件」で解説しています。
  • 合計範囲 ⇒ 指定なし
    • 今回の場合、検索範囲と合計範囲が同じため指定しなくて問題ありません

計算結果

実際のエクセル画面は下記の通りとなります。

数値から検索する場合の結果を記載したエクセル画面

使用例2 : 文字列で検索を行い合計を求める

SUMIF関数は、文字列の条件を指定することもできます。

完全一致の文字列の場合

特定の商品の売上合計を求める場合を紹介します。

このようなエクセルがあったとします。

文字列が完全一致する場合のエクセル画面

「商品A」のセルだけを合計したい場合、次のように記述します。

=SUMIF($A$2:$A$6,"商品A",$B$2:$B$6)

引数の解説

この例では、引数を下記の通り設定しています。

この関数を解説
SUMIF関数の説明

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

計算結果

実際のエクセル画面は下記の通りとなります。

文字列が完全一致する場合の結果エクセル画面

使用例3 : 文字列を部分一致で検索し合計を求める

ワイルドカードを使って、文字列の部分一致を検索することも可能です。

このようなエクセルがあったとします。

文字列が部分一致する場合のエクセル画面

「商品名」に「A」を含むすべての売上を合計するには、次のように記述します。

=SUMIF($A$2:$A$6,"商品*A*",$B$2:$B$6)

引数の解説

この例では、引数を下記の通り設定しています。

この関数を解説
SUMIF関数の説明

  • 範囲 ⇒ $A$2:$A$6
    • A2からA6までの範囲を検索します。
      このように範囲を指定する場合は、絶対参照($記号)を使用すると、オートフィルを行っても範囲がずれることはありません。
  • 検索条件 ⇒ ”商品*A*”
    • 商品名に「A」を含むものを検索します。
      *はワイルドカードといい、任意の文字列を表します。
      今回は「商品」という文字列の後に「A」が付くものを検索します。
      具体的には「商品A~」や「商品~A」になります。
      ワイルドカードを検索する場合の、条件指定方法については、「📌 ワイルドカードを使う場合」で解説しています。
  • 合計範囲 ⇒ $B$2:$B$6
    • 検索条件でヒットした行の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関数を使いましょう。

あわせて読みたい
エクセルでSUMIFS関数を使って複数条件の合計を簡単に求める方法 「エクセルで複数の条件分岐を行い合計を求めたい!!」どのようにしたらいいんだろう?と悩んだことはありませんか? ・特定の条件に合ったデータの合計を求めたい!・...
✅ 使用例 : 「商品A」でかつ「売上100以上」の合計を求める
=SUMIFS(B2:B10, A2:A10, "商品A", B2:B10, ">=100")
この関数を解説
SUMIFS関数の構成

  • 範囲 ⇒ 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関数をより活用するために、関連するExcel関数やVBAを学ぶのもおすすめです!

あわせて読みたい
サイトマップ このページは、本サイトの記事を分かりやすくまとめました。ぜひご覧ください。 目次 「VBA」を見る 「Officeスクリプト」を見る 「ワークシート関数」を見る 「JavaScr...
スポンサーリンク
よかったらシェアしてね!
  • URLをコピーしました!
  • URLをコピーしました!
目次