「エクセルで複数の条件分岐を行い合計を求めたい!!」
どのようにしたらいいんだろう?と悩んだことはありませんか?

・特定の条件に合ったデータの合計を求めたい!
・さまざまな条件で合計を分けて処理したい!



その場合は、ワークシート関数の「SUMIFS関数」を
使用すると解決します!
そんな時に便利なのが「SUMIFS関数」です。
この記事では、エクセルを使って複数条件の合計を求める方法を詳しくご紹介します。
基本的な使い方から応用的なテクニックまで、初心者の方でもすぐに実践できる内容です。
ぜひ最後までお読みください。
基本的なSUM関数や、条件で合計を分けたい場合は、下記の記事も参考にしてください。




【 この記事の概要 】
よく使う度 | |
難しさ | |
覚えておくと安心度 |
関数を使いこなせれば、エクセル作業が何倍も速くなり、ミスも激減します。
でも、どこから始めればいいか迷いますよね?
初心者でもわかりやすくステップアップできる本があれば、効率的にスキルを伸ばせますよ!




この記事を見てできるようになること
- SUMIFS関数の引数の使い方を理解し、範囲の設定や検索条件の指定方法を学べる。
- SUMIFS関数とSUMIF関数の違いを理解できる。
- 複数の条件を組み合わせた合計方法を習得できる。
- ワイルドカードを使った部分一致の検索方法を理解できる。
エクセル「SUMIFS関数」の基本について解説
まずは、「SUMIFS関数」について説明します。
SUMIFS関数は何ができる?
SUMIFS関数は、複数の条件に一致するデータの合計を求めるエクセルの関数です。
SUMIFS関数の構成


- 合計対象範囲 (必須)
- 合計を行うセル範囲を指定します。
- 条件範囲 1 (必須)
- 条件 1 を適用する範囲を指定します。
条件範囲1 と 条件1 は、検索時にペアになります。
- 条件 1 を適用する範囲を指定します。
- 条件 1 (必須)
- 条件範囲 1 に適用する、検索条件を指定します。
(ある数値以上や、検索したい文字列など)
ワイルドカードの使用も可能です。 (?は任意の1文字、*は任意の文字)
- 条件範囲 1 に適用する、検索条件を指定します。
- 条件範囲 2 (任意)
- 追加の条件 2 を適用する範囲を指定します。
条件範囲 2 と 条件 2 は、検索時にペアになります。
また、条件範囲 2 を入力した場合、条件 2 は必須となります。
- 追加の条件 2 を適用する範囲を指定します。
- 条件 2 (任意)
- ある数値以上や、検索したい文字列など、検索条件を指定します。
ワイルドカードの使用も可能です。 (?は任意の1文字、*は任意の文字)
- ある数値以上や、検索したい文字列など、検索条件を指定します。
- 条件範囲 3 以降 (任意)
- 条件範囲 3 以降も同じです。
最大 127 の範囲、条件を指定できます。
- 条件範囲 3 以降も同じです。
より詳しい情報は、Microsoft公式 – SUMIFS関数についてを参照してみてください。
SUMIFS関数の使用例をご紹介
それでは、SUMIFS関数の使用例を2つ紹介します。
使用例1 : 日付で条件分岐を行い合計を求める方法
日付から検索をかけて、合計を求める方法を紹介します。
例えば、このようなエクセルデータがあるとします。


期間が「2023年1月1日 ~ 2023年12月31日」の中で、売上金額が100以上のセルだけを合計したい場合、次のように記述します。
=SUMIFS($B$2:$B$9,$A$2:$A$9,">=2023-01-01",$A$2:$A$9,"<=2023-12-31",$B$2:$B$9,">=100")
引数の解説
この例では、引数を下記の通り設定しています。


- 合計対象範囲 ⇒ $B$2:$B$9
- B2からB9までの範囲を合計します。
※このように範囲を指定する場合は、絶対参照($記号)を使用すると、オートフィルを行っても範囲がずれることはありません。
- B2からB9までの範囲を合計します。
- 条件範囲 1 ⇒ $A$2:$A$9
- 条件 1 の日付を検索する範囲を指定します。
今回は、A2からA9までの範囲となります。
- 条件 1 の日付を検索する範囲を指定します。
- 条件 1 ⇒ ”>=2023-01-01″
- 2023年1月1日からの日付を検索します。
検索条件は、” ” (ダブルクォーテーション)で囲う必要があります。
- 2023年1月1日からの日付を検索します。
- 条件範囲 2 ⇒ $A$2:$A$9
- 条件 2 の日付を検索する範囲を指定します。
今回は、A2からA9までの範囲となります。
- 条件 2 の日付を検索する範囲を指定します。
- 条件 2 ⇒ ”<=2023-12-31″
- 2023年12月31日までの日付を検索します。
検索条件は、” ” (ダブルクォーテーション)で囲う必要があります。
- 2023年12月31日までの日付を検索します。
- 条件範囲 3 ⇒ $B$2:$B$9
- 条件 3 の数値を検索する範囲を指定します。
今回は、100以上の売上を検索する範囲となります。
- 条件 3 の数値を検索する範囲を指定します。
- 条件 3 ⇒ ”>=100″
- 100以上の売上を検索します。
検索条件は、” ” (ダブルクォーテーション)で囲う必要があります。
数値を検索する場合の、その他条件については、事項にて解説を行っていますので、そちらを参照ください。
- 100以上の売上を検索します。
実際のエクセル画面は下記の通りとなります。


検索条件にて数値を指定する方法
検索条件で数値を指定する場合は、次のように記載します。
条件 | 記載方法 | 意味 |
---|---|---|
○以上 | ">=100" | 100以上の値を対象 |
○以下 | "<=100" | 100以下の値を対象 |
○より大きい | ">100" | 100より大きい値を対象 |
○より小さい | "<100" | 100より小さい値を対象 |
○と等しい | "=100" | 100に等しい値を対象 |
○と異なる | "<>100" | 100ではない値を対象 |
使用例2 : 文字列で条件分岐して合計を求める方法
SUMIFS関数は文字列の条件を指定することもできます。
完全一致の文字列の場合
特定の支店名の中から、商品名を検索して、売上合計を求める場合を紹介します。
このようなエクセルがあったとします。


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


- 合計対象範囲 ⇒ $C$2:$C$9
- C2からC9までの範囲を合計します。
※このように範囲を指定する場合は、絶対参照($記号)を使用すると、オートフィルを行っても範囲がずれることはありません。
- C2からC9までの範囲を合計します。
- 条件範囲 1 ⇒ $A$2:$A$9
- 条件 1 の支店名を検索する範囲を指定します。
今回は、A2からA9までの範囲となります。
- 条件 1 の支店名を検索する範囲を指定します。
- 条件 1 ⇒ ”〇〇支店”
- 〇〇支店を検索します。
検索条件は、” ” (ダブルクォーテーション)で囲う必要があります。
- 〇〇支店を検索します。
- 条件範囲 2 ⇒ $B$2:$B$9
- 条件 2 の商品名を検索する範囲を指定します。
今回は、B2からB9までの範囲となります。
- 条件 2 の商品名を検索する範囲を指定します。
- 条件 2 ⇒ ”商品A”
- 商品Aを検索します。
検索条件は、” ” (ダブルクォーテーション)で囲う必要があります。
- 商品Aを検索します。
実際のエクセル画面は下記の通りとなります。


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


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


- 合計対象範囲 ⇒ $C$2:$C$9
- C2からC9までの範囲を合計します。
※このように範囲を指定する場合は、絶対参照($記号)を使用すると、オートフィルを行っても範囲がずれることはありません。
- C2からC9までの範囲を合計します。
- 条件範囲 1 ⇒ $A$2:$A$9
- 条件 1 の支店名を検索する範囲を指定します。
今回は、A2からA9までの範囲となります。
- 条件 1 の支店名を検索する範囲を指定します。
- 条件 1 ⇒ ”〇〇支店”
- 〇〇支店を検索します。
検索条件は、” ” (ダブルクォーテーション)で囲う必要があります。
- 〇〇支店を検索します。
- 条件範囲 2 ⇒ $B$2:$B$9
- 条件 2 の商品名を検索する範囲を指定します。
今回は、B2からB9までの範囲となります。
- 条件 2 の商品名を検索する範囲を指定します。
- 条件 2 ⇒ ”商品A”
- 条件 1 を検索してヒットしたものから、商品名に「A」を含むものを検索します。
*はワイルドカードといい、任意の文字列を表します。
今回は「商品」という文字列の後に「A」が付くものを検索します。
具体的には「商品A~」や「商品~A」になります。
- 条件 1 を検索してヒットしたものから、商品名に「A」を含むものを検索します。
実際のエクセル画面は下記の通りとなります。


検索条件にてワイルドカードを指定する方法
検索条件でワイルドカードを指定する場合は、次のように記載します。
条件 | 記載方法 | 意味 |
---|---|---|
「A」で始まるデータ | "A*" | Aで始まるすべてのデータを対象 |
「B」で終わるデータ | "*B" | Bで終わるすべてのデータを対象 |
「C」を含むデータ | "*C*" | Cを含むすべてのデータを対象 |
「*」を文字として扱う | "データ~*" | 「データ*」という文字列そのものを対象 |
「?」を文字として扱う | "ファイル~?" | 「ファイル?」という文字列そのものを対象 |
この記事のまとめ
エクセルでの複数条件の合計を求めるSUMIFS関数は、非常に多くの場面で活用できます。
基本的なSUMIFS関数の使い方から、条件の指定方法、応用までを理解することで、業務効率を大幅に向上させましょう。
ポイントのおさらい
ポイント | 説明 |
---|---|
SUMIFS関数の基本 | SUMIFS関数は、複数の条件に一致するデータの合計を求めることができます。 |
引数の使い方 | 合計対象範囲、条件範囲、条件を指定して使用します。 最大127の条件を設定可能です。 |
日付や数値の条件指定 | 特定の期間や数値範囲を指定してデータを合計することができます。 |
文字列の条件指定 | 完全一致やワイルドカードを使った部分一致の検索が可能です。 |
他の関数との違い | SUMIFS関数は複数条件を使って合計を求めるのに特化しており、 SUMIF関数やSUM関数より柔軟です。 |
さらに学ぶために
VBA(Visual Basic for Applications)を使用することで、SUMIFS関数と同様の処理を自動化することも可能です。
関数からさらにステップアップしたい場合には、VBAを使用してみるのも良いかもしれません。
今回の記事で紹介したSUMIFS関数を活用することで、残業時間の削減や業務の効率化に役立ててください。