SUMIFS関数の使い方|複数の条件に合う数字だけ合計する
※写真はイメージです
書き方
=SUMIFS(合計対象範囲, 条件範囲1, 条件1, [条件範囲2, 条件2 …])「新宿の11月」のように、条件が2つ以上ある合計はこれです。条件が1つでも使えるので、正直SUMIFよりこっちを覚えておくほうが早いと思います。注意は1つだけで、合計する範囲を最初に書くことです。
この図の表をExcelファイルでダウンロード(問題と答えのシートつき)
引数の意味
| 引数 | 入れるもの | 図の例 |
|---|---|---|
| 合計対象範囲 | 合計したい数字の列 | C2:C6(売上) |
| 条件範囲1 | 1つ目の条件を見る列 | A2:A6(支店) |
| 条件1 | 1つ目の条件 | "新宿" |
| 条件範囲2, 条件2 … 省略できる | 2つ目からの条件。127組まで足せる | B2:B6, "11月" |
SUMIFは「条件の範囲, 条件, 合計範囲」の順番でしたが、SUMIFSは合計範囲が先頭です。ここを逆にして「なぜか0になる」という相談がいちばん多いです。
それぞれの範囲は同じ行数にそろえます。C2:C6 と A2:A5 のようにずれると #VALUE! になります。
日付で期間を区切る(〇月分だけ合計)
日付は ">="&DATE(2026,11,1) のように、記号を "" でくくって & で日付をつなげます。期間をセルに入れておくなら ">="&F1 です。">=F1" と書くと、F1という文字と比べてしまうので合計が0になります。
終わりを「12/1より前(<)」にしておくと、月末が30日か31日かを気にしなくてすみます。
〇以上〇未満で合計する
=SUMIFS(C2:C100,C2:C100,">=10000",C2:C100,"<50000")同じ列を条件に2回使えば、「1万円以上5万円未満の取引だけ」のような範囲で合計できます。記号は >=(以上)、>(より大きい)、<=(以下)、<(未満)、<>(以外)です。
支店×月の集計表を一気に作る
=SUMIFS($C:$C,$A:$A,$E2,$B:$B,F$1)縦に支店、横に月を並べた表なら、支店の列($E2)は列だけ、月の行(F$1)は行だけ固定します。左上に1つ式を入れて、右と下にコピーすれば全部のマスが埋まります。ピボットテーブルを使わずに、形の決まった集計表を作るときの定番です。
うまくいかないとき
1合計が0になる
合計範囲を最後に書いている(SUMIFと同じ順番)か、金額が文字として入っています。
直し方合計範囲を1つ目にします。数字が左寄せなら文字なので、数値に変換します。
2#VALUE! になる
範囲の行数がそろっていません。
直し方全部の範囲を同じ行から同じ行までにするか、列ごと(C:C)指定します。
3日付の条件が効かない
">=F1" のように、セルまで "" の中に入れています。
直し方">="&F1 と、記号だけを "" でくくってセルをつなげます。
使えるバージョン
Excel 2007以降のすべてのExcel(2016・2019・2021・2024・Microsoft 365)で使えます。Googleスプレッドシートでも同じ書き方です。
サンプルファイルで試す
「問題」のシートの黄色いセルに式を入れて、「答え」のシートと比べてください。
よくある質問
SUMIFとSUMIFSはどちらを使えばいいですか?
SUMIFSは条件1つでも使えるので、SUMIFSだけ覚えておけば困りません。ただ引数の順番がちがうので、混ぜて使うときは気をつけてください。
「新宿または立川」のようなOR条件はできますか?
SUMIFSは「かつ」だけなので、<code>=SUMIFS(…,"新宿")+SUMIFS(…,"立川")</code> と足し算にします。条件が多いなら <code>=SUM(SUMIFS(C:C,A:A,{"新宿","立川"}))</code> とも書けます。
条件はいくつまで指定できますか?
条件範囲と条件の組で127組までです。
「〇〇を含む」で合計できますか?
はい。条件を <code>"*新宿*"</code> のように * で囲むと、「新宿」を含む行が対象になります。
一緒に覚えたい関数・操作
このページについて
操作の説明は Microsoft 365 の日本語版Excel(Windows)に合わせています。図はこのサイトで作ったもので、表の会社名・商品名・人名は架空です。運営者情報