
SUMIF関数は使えるけど、もっと色々な条件で合計を出したい…

SUMIFS関数を使ってみたけどうまくいかない…

慣れてない関数や初めて見る関数を使うときって上手くいかない時が多いよね!
Excelでデータを集計する際、特定の条件に合致する数値だけを合計したいときに、単一の条件であればSUMIF関数が便利ですが、複数の条件を組み合わせて合計を算出したい場合は、SUMIFS関数の出番だよね!
今回は、SUMIFS関数の基本的な使い方から、具体的なデータを使った実践例、さらには「なぜかうまくいかない!」という時の原因と対処法まで、丁寧に解説していくね!

やった!
今日もよろしく頼むね!
この記事を読み終える頃には、SUMIFS関数を使いこなし、あなたのデータ集計作業が劇的に効率アップすること間違いなしです!
SUMIFS関数ってどんな関数?SUMIF関数との違いは?

まずはSUMIFS関数がどんな関数なのか、そしてSUMIF関数と何が違うのかを見ていきましょう。
SUMIFS関数とは?
SUMIFS関数は、
複数の条件をすべて満たすデータだけを合計することができる関数です。
例えば、「A支店の売上のうち、B商品で、かつ担当者がCさんのものだけを合計したい」といった、複雑な条件での集計が可能になります。
この関数を使いこなせば、これまで手作業でフィルタリングして合計していた作業も、一瞬で終わらせることができますよ!
SUMIFS関数とSUMIF関数の違い
SUMIF関数とSUMIFS関数は、どちらも条件に合った数値を合計する関数ですが、その一番の違いは指定できる条件の数です。
- SUMIF関数: 1つの条件を満たすデータを合計します。
- 例:「りんご」の売上を合計する
- SUMIFS関数: 複数の条件をすべて満たすデータを合計します。
- 例:「東日本」の「りんご」の売上を合計する

SUMIF関数について詳しく知りたい方は、こちらの記事も参考にしてみてくださいね!
SUMIFS関数の基本的な使い方をマスターしよう!
それでは、SUMIFS関数の基本的な使い方を見ていきましょう。
SUMIFS関数の書式
SUMIFS関数の書式は次のようになっています。
=SUMIFS(合計対象範囲, 条件範囲1, 条件1, [条件範囲2, 条件2], ...)

なんだか難しそう。。

心配しないで!
順を追って解説するね!
合計対象範囲
: 合計したい数値が入力されているセル範囲を指定します。条件範囲1
: 1つ目の条件を検索するセル範囲を指定します。条件1
:条件範囲1
の中で検索したい1つ目の条件を指定します。[条件範囲2, 条件2]
: 2つ目以降の条件と、その条件を検索するセル範囲を指定します。必要なだけ追加できます。
SUMIFS関数を使う手順

具体的な例を使って、SUMIFS関数を一緒に使ってみよう!
以下のような販売管理表があるとします。

目的:「東支店」の「りんご」の売上合計を求めたい

この場合、条件は「支店が東」と「商品名がりんご」の2つだね。
操作手順:
- 結果を表示したいセル(例:G2セル)を選択します。
- 数式バーに
=SUMIFS(
と入力します。 合計対象範囲
を指定します。今回は「売上」の合計なので、D2:D9 を選択します。=SUMIFS(D2:D9,
となります。
条件範囲1
を指定します。1つ目の条件は「支店が東」なので、「支店」の列である B2:B9 を選択します。=SUMIFS(D2:D9,B2:B9,
となります。
条件1
を指定します。「東」という文字列を合計したいので、"東"
と入力します。文字列は**ダブルクォーテーション(”)**で囲むのを忘れないでくださいね。=SUMIFS(D2:D9,B2:B9,"東",
となります。
条件範囲2
を指定します。2つ目の条件は「商品名がりんご」なので、「商品名」の列である C2:C9 を選択します。=SUMIFS(D2:D9,B2:B9,"東",C2:C9,
となります。
条件2
を指定します。「りんご」という文字列を合計したいので、"りんご"
と入力します。=SUMIFS(D2:D9,B2:B9,"東",C2:C9,"りんご")
となります。
- 最後にEnterキーを押すと、計算結果が表示されます。
【数式】
=SUMIFS(D2:D9,B2:B9,"東",C2:C9,"りんご")
【結果】
この例の場合、「東支店」の「りんご」の売上は、1000 + 1200 = 2200 となります。


なんとなくSUMIFS使い方の理解が出来たよ!
SUMIFS関数の実践的な使い方:具体的なデータで色々な条件を試してみよう!

すもりーマンいいね!
じゃあさっきの販売管理表を使って、さらに色々な条件でSUMIFS関数を使ってみましょう!

例1:3つの条件で合計を算出する
目的:「東支店」の「佐藤」さんが販売した「バナナ」の売上合計を求めたい
【数式】
=SUMIFS(D2:D9,B2:B9,"東",C2:C9,"バナナ",E2:E9,"佐藤")
【結果】
「700」

例2:以上、以下、より大きい、より小さいなどの比較演算子を使う
日付や金額など、数値の条件を指定したい場合は、比較演算子を使います。
=
(等しい)>
(より大きい)<
(より小さい)>=
(以上)<=
(以下)<>
(等しくない)
目的:売上が「1000」以上の「りんご」の売上合計を求めたい
【数式】
=SUMIFS(D2:D9,C2:C9,"りんご",D2:D9,">=1000")
【結果】
1000 + 1200 + 1500 = 「3700」


ポイント: 比較演算子を使う場合、">=1000"
のようにダブルクォーテーションで囲むのを忘れないでくださいね。
例3:ワイルドカード(あいまい検索)を使う

特定の文字を含む、または特定の文字で始まる/終わるデータを合計したい場合は、ワイルドカードを使うと便利です。
*
(アスタリスク):任意の文字列?
(クエスチョンマーク):任意の一文字
目的:「支店」名に「西」を含む商品の売上合計を求めたい
【数式】
=SUMIFS(D2:D9,B2:B9,"*西*",C2:C9,"*")
【結果】
800 + 500 + 1500 + 1100 = 「3900」

この場合は「西」と「*」の両方を支店名と商品名に適用しています。
もし、支店名に「西」を含むものすべてを合計したい場合は、商品名側の条件は不要で、=SUMIFS(D2:D9,B2:B9,"*西*"
です。

SUMIFS関数がうまくいかない!エラーの原因と対処法

SUMIFS関数を使ってみたけどうまくいかない…

すもりーマンのようにうまくいかない経験はありませんか?
よくあるエラーの原因と、その対処法を詳しく見ていきましょう。
引数の順番が間違っている
SUMIFS関数は、SUMIF関数と引数の順番が異なります。
- SUMIF関数:
SUMIF(条件範囲, 条件, 合計対象範囲)
- SUMIFS関数:
SUMIFS(合計対象範囲, 条件範囲1, 条件1, ...)

SUMIFS関数は、最初に合計対象範囲を指定します。この順番を間違えると、エラーになったり、期待する結果が得られなかったりします。
対処法: もう一度書式を確認し、引数の順番を正しく入力し直しましょう。
条件の指定方法が間違っている
条件の指定方法にはいくつか注意点があります。
間違った例:
=SUMIFS(D2:D9,B2:B9,東,C2:C9,りんご)
→文字列をダブルクォーテーションで囲んでいない
=SUMIFS(D2:D9,C2:C9,"りんご",D2:D9,>1000)
→比較演算子をダブルクォーテーションで囲んでいない
対処法: 指定したい条件の種類に合わせて、正しい書式で入力できているか確認しましょう。
参照範囲(合計対象範囲や条件範囲)が間違っている

合計対象範囲や条件範囲の指定が正しくないと、当然ながら正しい結果は得られません。
対処法1:数式をダブルクリックして、各範囲が色分けされて表示されるのを確認し、選択範囲が正しいか目視で確認しましょう。
対処法2:オートフィルなどで数式をコピーして使う場合は、固定したい範囲に絶対参照(F4キーで$A$1
のように変換)を使っているか確認しましょう。

条件範囲と合計対象範囲の行数が一致していない

SUMIFS関数では、合計対象範囲
とすべての条件範囲
の行数は同じでなければなりません。列数は異なっていても問題ありませんが、行数が異なるとエラーになったり、正しく集計されなかったりします。

例えば、合計対象範囲が D2:D10
なのに、条件範囲が B2:B9
のように、範囲の終わりの行がずれているとエラーの原因になります。
対処法: すべての範囲が同じ行数になるように指定し直しましょう。
全角と半角、表記ゆれがある

「東京」と「東京都」、「りんご」と「リンゴ」のように、データの中に全角と半角が混ざっていたり、表記ゆれがあったりすると、SUMIFS関数は別のデータとして認識してしまい、正しく集計できません。
例えば、「東支店」の売上を集計したいのに、データの中に「東支店」と「東 支店」(スペースが入っている)が混在していると、スペースの入ったデータは合計されません。
対処法1:データの統一: 事前にデータクレンジングし、表記ゆれをなくしておくのが最も確実です。置換機能やTRIM関数(余分なスペースを削除)などが役立ちます。
対処法2:ワイルドカードの活用: どうしても表記ゆれが多い場合は、"*東*"
のようにワイルドカードを使い、あいまい検索で対応できることもあります。
数値が文字列として入力されている

合計したいデータが、見た目は数字なのに、実は「文字列」として入力されている場合があります。特にCSVファイルからインポートしたデータなどでよく見られます。
文字列の数字は、セルの左上に緑色の三角マークが表示されたり、「’123」のようにアポストロフィがついていたりすることがあります。
対処法1:数値に変換 対象のセルを選択し、「数値に変換」オプションを使用するか、VALUE関数
を使って文字列を数値に変換します。
対処法2:再入力 一番確実なのは、再度手入力で数字を入力し直すことです。

SUMIFS関数を使いこなすためのヒントと注意点

SUMIFS関数をより効果的に、そしてミスなく使うためのヒントと注意点をご紹介します。
条件をセル参照にする

先ほどは条件を直接数式の中に書き込みましたが、条件を別のセルに入力しておくと、条件を変更したいときに数式を修正する必要がなくなり、非常に便利です。
目的:「G2セルに入力した支店名」と「H2セルに入力した商品名」の売上合計を求めたい

例として、G2セルに「東」、H2セルに「りんご」と入力されているとします。
【数式】
=SUMIFS(D2:D9,B2:B9,G2,C2:C9,H2)
このように入力すれば、G2セルやH2セルの値を変更するだけで、簡単に集計条件を変えることができます。


ポイント: セル参照の場合、文字列を囲むダブルクォーテーションは不要です。ただし、">=1000"
のように比較演算子と組み合わせる場合は、">"&H2
のようにアンパサンド(&)で結合する必要があります。
複雑な条件の組み合わせに注意する
SUMIFS関数は、指定したすべての条件を満たすデータを合計します。つまり、AND条件で集計が行われます。
例えば、「東支店」かつ「りんご」かつ「佐藤さん」というように、すべての条件がTRUEの場合のみ合計されます。
「東支店」または「西支店」のようにOR条件で合計したい場合は、SUMIFS関数だけではできません。
この場合は、SUMIFS関数を複数組み合わせるか、SUMPRODUCT関数や配列数式など、別の方法を検討する必要があります。
大量のデータでSUMIFS関数を使う際のパフォーマンス

大量のデータ(数十万行以上など)に対してSUMIFS関数を多用すると、計算に時間がかかったり、Excelの動作がものすごく重くなるよね。
その場合は、以下のような対策を検討してみてください。
まとめ

お疲れ様でした!
この記事では、ExcelのSUMIFS関数の使い方を基礎から応用、そしてうまくいかない場合の対処法まで、幅広く解説してきました。
SUMIFS関数は、複数の条件に基づいてデータを集計する際に非常に強力なツールです。最初は少し難しく感じるかもしれませんが、ポイントを押さえて練習すれば、すぐに使いこなせるようになりますよ。
今日のポイントをもう一度おさらいしましょう。

SUMIFS関数をマスターして、日々のデータ集計作業をもっと効率的に、そして正確に進めていきましょう!

みんなで頑張ろう!
コメント