エクセル関数辞典 エクセル関数辞典

SUMIFS関数の使い方|複数条件で合計を求める方法

SUMIFS SUMIF 集計 合計 Excel関数
広告スペース (article-top)

SUMIFS関数は、複数の条件に一致するデータの合計を求める関数です。「東京支店の4月の売上合計」のように、2つ以上の条件を指定して集計できます。SUMIF関数の拡張版として、実務で非常によく使われます。

この記事では、SUMIFS関数の基本から、さまざまな条件指定のテクニックを解説します。

SUMIFS関数の基本構文

=SUMIFS(合計対象範囲, 条件範囲1, 条件1, [条件範囲2, 条件2], ...)

引数の説明

引数説明必須/任意
合計対象範囲合計を求めるセル範囲必須
条件範囲1最初の条件を適用する範囲必須
条件1条件範囲1に適用する条件必須
条件範囲22番目の条件を適用する範囲任意
条件2条件範囲2に適用する条件任意
最大127組の条件範囲と条件を指定可能任意

SUMIF関数との大きな違いは、引数の順序です。SUMIFでは合計対象範囲が最後ですが、SUMIFSでは最初に指定します。

SUMIF関数との比較

項目SUMIFSUMIFS
条件の数1つのみ複数指定可
合計対象範囲の位置第3引数第1引数
範囲サイズの制約合計範囲は条件範囲と異なるサイズ可すべての範囲が同じサイズ

実践例1:支店と月を指定した売上合計

以下の売上データから、特定の支店・月の売上合計を求めます。

支店売上
東京4月500000
大阪4月300000
東京5月550000
大阪5月320000
東京4月480000

東京支店の4月の売上合計を求めます。

=SUMIFS(C2:C6, A2:A6, "東京", B2:B6, "4月")

結果は980000(500000 + 480000)です。A列が「東京」かつB列が「4月」の行のC列を合計しています。

実践例2:セル参照で条件を指定

条件をセル参照で指定すると、セルの値を変更するだけで集計対象を切り替えられます。

=SUMIFS(C2:C6, A2:A6, E2, B2:B6, F2)

E2に支店名、F2に月名を入力すると、対応する売上合計が表示されます。

実践例3:比較演算子を使った条件

数値の条件に比較演算子を使う例です。売上が50万円以上のデータだけを合計します。

=SUMIFS(C2:C6, C2:C6, ">=500000")

比較演算子を使う場合は、演算子と数値を文字列として結合して指定します。

セル参照と組み合わせる場合は、以下のように記述します。

=SUMIFS(C2:C6, C2:C6, ">=" & E2)

実践例4:日付範囲を条件に指定

特定の期間のデータを合計する例です。2026年4月1日から4月30日までの売上を合計します。

=SUMIFS(C2:C100, B2:B100, ">=" & DATE(2026,4,1), B2:B100, "<=" & DATE(2026,4,30))

同じ条件範囲に対して2つの条件(以上と以下)を指定することで、範囲指定を実現しています。DATE関数で日付を生成することで、日付の書式に依存しない安定した数式になります。

実践例5:ワイルドカードを使った部分一致

条件にワイルドカードを使って部分一致で集計する例です。

=SUMIFS(C2:C100, A2:A100, "*東京*")

支店名に「東京」を含むデータ(東京本店、東京支店など)の売上を合計します。

アスタリスク(*)は任意の文字列、クエスチョンマーク(?)は任意の1文字を表します。

# 「東」で始まるデータ
=SUMIFS(C2:C100, A2:A100, "東*")

# 3文字の支店名のデータ
=SUMIFS(C2:C100, A2:A100, "???")

よくあるエラーと対処法

結果が0になる

条件に一致するデータがない場合、SUMIFSは0を返します。エラーではなく正常な動作ですが、意図しない場合は以下を確認してください。

  • 条件の文字列が正確か(全角半角、スペースの有無)
  • 条件範囲と合計対象範囲のサイズが一致しているか
  • 日付の書式が適切か

#VALUE!エラー

条件範囲と合計対象範囲の行数が異なる場合に発生します。すべての範囲が同じ行数であることを確認してください。

# エラーになる(行数が異なる)
=SUMIFS(C2:C10, A2:A5, "東京")

# 正しい(行数が一致)
=SUMIFS(C2:C10, A2:A10, "東京")

比較演算子の記述ミス

比較演算子を条件に含める場合、演算子を文字列として記述する必要があります。

# 間違い
=SUMIFS(C2:C10, C2:C10, >=500000)

# 正しい
=SUMIFS(C2:C10, C2:C10, ">=500000")

実務でのテクニック

テーブル機能との組み合わせ

Excelのテーブル機能を使うと、範囲が自動拡張されるため、データが追加されても数式の修正が不要です。

=SUMIFS(テーブル1[売上], テーブル1[支店], "東京", テーブル1[月], "4月")

空白以外を条件にする

空白でないセルの合計を求める場合は、「<>」を使います。

=SUMIFS(C2:C100, A2:A100, "<>")

条件付きの平均や個数

SUMIFS関数と同じ構文で、AVERAGEIFS関数(条件付き平均)やCOUNTIFS関数(条件付き個数)も利用できます。集計の目的に応じて使い分けてください。

Google スプレッドシートでの互換性

SUMIFS関数はGoogle スプレッドシートでも同じ構文で利用できます。動作もExcelと同一です。ワイルドカードや比較演算子の使い方も共通しています。

まとめ

SUMIFS関数は複数条件でデータを合計する関数です。

  • 合計対象範囲を第1引数に指定する点に注意
  • 比較演算子を使う場合は文字列として記述する
  • DATE関数と組み合わせて日付範囲を指定できる
  • ワイルドカードで部分一致の集計が可能
  • すべての範囲は同じサイズにする必要がある

売上集計や経費分析など、業務データの集計で頻繁に使う関数です。条件の指定方法をマスターして、効率的なデータ分析に役立てましょう。

広告スペース (article-bottom)

あわせて読みたい