データ分析や業務効率化において、複数の条件を満たす数値を合計することは日常的に必要になります。例えば「特定の期間の売上合計を商品カテゴリ別に集計したい」「担当者ごとの特定条件を満たす売上実績を知りたい」といったケースです。
そんなとき強力な味方になるのが「SUMIFS関数」です。この関数を使いこなせば、複雑な条件による集計作業が劇的に効率化されます。
今回は、Googleスプレッドシートにおける「SUMIFS関数」の使い方を基本から応用まで徹底解説します。
SUMIFS関数とは?
SUMIFS関数は、複数の条件に基づいて指定した範囲の合計を計算するGoogleスプレッドシートの関数です。「SUM(合計)」と「IF(条件)」の複数形が組み合わさった名前が示す通り、「いくつかの条件を満たす場合のみ合計する」という操作を行います。
SUMIF関数(単数形)と比較すると、SUMIFS関数は複数の条件を指定できる点が最大の違いです。複雑なデータ分析において、SUMIFS関数は非常に強力なツールとなります。
SUMIFS関数の基本構文
SUMIFS関数の基本的な構文は次の通りです:
=SUMIFS(集計範囲, 条件範囲1, 条件1, [条件範囲2, 条件2, ...])
各引数の意味は以下の通りです:
- 集計範囲: 合計したい数値が含まれるセル範囲
- 条件範囲1: 最初の条件を適用するセル範囲
- 条件1: 条件範囲1に対する条件(文字列、数値、セル参照など)
- 条件範囲2, 条件2, …: 追加の条件範囲と条件のペア(最大127組まで指定可能)

基本的な使い方
例1: 単一条件による集計
まずは基本的な使い方を見てみましょう。以下のような売上データがあるとします:
日付 | 商品カテゴリ | 担当者 | 売上金額 |
---|---|---|---|
2025/01/15 | 食品 | 鈴木 | 5,000 |
2025/01/16 | 衣類 | 佐藤 | 8,000 |
2025/01/17 | 食品 | 田中 | 3,000 |
2025/01/18 | 電化製品 | 鈴木 | 12,000 |
2025/01/19 | 食品 | 佐藤 | 4,000 |
この表で、商品カテゴリが「食品」の売上合計を求めたい場合、以下のようにSUMIFS関数を使います:
=SUMIFS(D2:D6, B2:B6, "食品")
結果:12,000(5,000 + 3,000 + 4,000)
例2: 複数条件による集計
次に、複数条件を組み合わせた例を見てみましょう。商品カテゴリが「食品」かつ担当者が「佐藤」の売上合計を求めたい場合:
=SUMIFS(D2:D6, B2:B6, "食品", C2:C6, "佐藤")
結果:4,000

条件指定の応用テクニック
SUMIFS関数では、様々な形式で条件を指定することができます。
比較演算子を使った条件指定
数値や日付に対して、比較演算子(>, <, >=, <=, <>, =)を使った条件を指定できます:
=SUMIFS(D2:D6, D2:D6, ">5000") // 5000より大きい売上の合計
ワイルドカードを使った部分一致
テキストデータに対して、ワイルドカードを使った部分一致検索ができます:
- * は0文字以上の任意の文字列
- ? は任意の1文字
=SUMIFS(D2:D6, B2:B6, "電化*") // 「電化」で始まる商品カテゴリの売上合計

日付範囲の条件指定
日付範囲を指定する場合は、比較演算子を使います:
=SUMIFS(D2:D6, A2:A6, ">=2025/01/16", A2:A6, "<=2025/01/18") // 2025/01/16から2025/01/18までの売上合計

高度な使い方
セル参照による動的な条件指定
条件を直接入力するのではなく、セル参照を使うと動的な分析が可能になります:
=SUMIFS(D2:D6, B2:B6, F1, C2:C6, F2)
ここで、F1とF2にそれぞれ条件を入力することで、条件を動的に変更できます。
OR条件(いずれかの条件を満たす場合の合計)
SUMIFS関数は複数の条件を「AND」(かつ)で結合します。つまり、すべての条件を満たす場合のみ合計します。
「OR」(または)条件で合計したい場合は、複数のSUMIFS関数を組み合わせます:
=SUMIFS(D2:D6, B2:B6, "食品") + SUMIFS(D2:D6, B2:B6, "衣類") // 商品カテゴリが「食品」または「衣類」の売上合計
より複雑な「OR」条件の場合は、SUMPRODUCT関数との組み合わせが便利です:
=SUMPRODUCT((B2:B6="食品")+(B2:B6="衣類"), D2:D6)

複数のOR条件とAND条件の組み合わせ
より複雑な条件を指定したい場合、例えば「(商品カテゴリが『食品』または『衣類』) かつ (担当者が『鈴木』)」という条件では:
=SUMPRODUCT(--(((B2:B6="食品")+(B2:B6="衣類"))>0), --(C2:C6="鈴木"), D2:D6)
実践的なSUMIFS関数の活用例
例1: 月次売上レポート
以下のような日付を含む売上データがある場合、特定の月の売上合計を求めることができます:
=SUMIFS(D:D, A:A, ">="&DATE(2025,1,1), A:A, "<"&DATE(2025,2,1)) // 2025年1月の売上合計
上記の式は、日付が2025年1月1日以上かつ2025年2月1日未満(つまり1月中)のデータを集計しています。
例2: 複数条件を満たす予算管理
予算管理表で、特定のプロジェクトと部門に関連する支出を集計する場合:
=SUMIFS(金額範囲, プロジェクト範囲, "プロジェクトA", 部門範囲, "営業部")
例3: 空白セルや非空白セルの処理
特定の条件を満たし、かつデータが入力されている(空白でない)セルのみを集計したい場合:
=SUMIFS(D2:D6, B2:B6, "食品", C2:C6, "<>") // 商品カテゴリが「食品」かつ担当者が空白でない売上合計
ここで、条件に「<>」を指定することで、空白でないセルという条件を表現しています。
反対に、空白セルのみを対象にする場合は、条件を「」(空文字)とします:
=SUMIFS(D2:D6, B2:B6, "食品", C2:C6, "") // 商品カテゴリが「食品」かつ担当者が空白の売上合計
SUMIFS関数の制限と注意点
1. 範囲のサイズに関する制限
SUMIFS関数では、すべての条件範囲と集計範囲のサイズ(行数と列数)が一致している必要があります。サイズが異なる場合は、#VALUE!エラーが返されます。
2. 条件の値に関する制限
条件には以下の値を使用できます:
- 数値
- テキスト
- セル参照
- 比較演算子
- ワイルドカード
ただし、正規表現はサポートされていないため、複雑なパターンマッチングには限界があります。
3. パフォーマンスに関する注意点
大量のデータに対してSUMIFS関数を使用する場合、処理に時間がかかることがあります。特に複数の条件を組み合わせる場合は注意が必要です。
SUMIFS関数と関連関数の比較
SUMIF関数との違い
SUMIF関数は単一条件のみをサポートしていますが、SUMIFS関数は複数条件をサポートしています。ただし、SUMIF関数とSUMIFS関数では引数の順序が異なるため注意が必要です:
SUMIF構文: =SUMIF(条件範囲, 条件, [集計範囲])
SUMIFS構文: =SUMIFS(集計範囲, 条件範囲1, 条件1, ...)
COUNTIFS関数との関連性
COUNTIFS関数は、SUMIFS関数と似ていますが、合計ではなく条件を満たすセルの個数をカウントします:
=COUNTIFS(B2:B6, "食品", C2:C6, "佐藤") // 商品カテゴリが「食品」かつ担当者が「佐藤」のデータ件数
AVERAGEIFS関数との関連性
AVERAGEIFS関数は、SUMIFS関数と似ていますが、合計ではなく条件を満たすセルの平均値を計算します:
=AVERAGEIFS(D2:D6, B2:B6, "食品", C2:C6, "佐藤") // 商品カテゴリが「食品」かつ担当者が「佐藤」の売上平均
まとめ
SUMIFS関数は、Googleスプレッドシートにおいて複数条件に基づくデータ集計を行うための強力なツールです。基本的な使い方から応用テクニックまでマスターすることで、データ分析の効率と精度が大幅に向上します。
本記事で紹介した例や手法を活用して、ぜひあなたのデータ分析スキルを高めてください。複雑な条件による集計作業も、SUMIFS関数を駆使することで簡単かつ正確に実行できるようになります。
特に業務効率化を目指す方や、データドリブンな意思決定を行いたい方にとって、SUMIFS関数はマスターしておくべき必須スキルの一つです。基本を理解したら、実際のデータで試してみて、さらに理解を深めていきましょう。