【Googleスプレッドシート】SUMIFS関数で複数条件の合計を出す!範囲と条件の指定方法

【Googleスプレッドシート】SUMIFS関数で複数条件の合計を出す!範囲と条件の指定方法
🛡️ 超解決

データ集計の際に「特定の商品かつ特定の月の売上合計」を求めたい場面は多いのではないでしょうか。単一条件であればSUMIF関数で簡単ですが、条件が2つ以上になると途端に困惑してしまいます。そんな時に役立つのがSUMIFS関数です。この記事では、複数条件を指定して正確な合計を算出する方法を、具体的な手順とともに解説します。

SUMIFS関数の基本的な書き方から、範囲指定のコツ、よくあるエラーの回避方法までを網羅します。これを読めば、複数条件の集計作業が格段に効率化できるでしょう。

【要点】SUMIFS関数を使いこなすための3つのポイント

  • =SUMIFS(合計範囲, 条件範囲1, 条件1, 条件範囲2, 条件2, …): 第1引数に合計したい数値の範囲、第2引数以降に条件範囲と条件のペアを指定します。
  • 条件範囲と条件は必ずペアで指定: 最大127組の条件を指定可能で、すべての条件を満たす行のみが合計対象となります。
  • ワイルドカードで部分一致: 「*」や「?」を使って、文字列の部分一致や1文字一致を条件にできます。

ADVERTISEMENT

SUMIFS関数の概要と仕組み

SUMIFS関数は、指定した複数の条件すべてに一致するセルの数値を合計する関数です。基本構文は次の通りです。

=SUMIFS(合計範囲, 条件範囲1, 条件1, 条件範囲2, 条件2, ...)

合計範囲は実際に数値を足し合わせるセル範囲です。条件範囲と条件はペアで指定し、条件範囲内で条件に合致するセルがある行の、合計範囲の値を合計します。条件は最大127組まで追加できます。条件の指定には、数値や文字列の直接入力、セル参照、比較演算子(>= など)、ワイルドカード(*, ?)が使えます。

SUMIFS関数の基本的な使い方

ここでは、実際のデータを使ってSUMIFS関数の入力手順を説明します。例として、以下のような売上表を想定します。

A列: 商品名, B列: 月, C列: 売上金額

「りんご」の「1月」の売上合計を求めます。

  1. 結果を表示するセルを選択します
    合計金額を表示したいセルをクリックして選択します。
  2. 関数を入力します
    「=SUMIFS(」と入力します。関数の引数ガイドが表示されます。
  3. 合計範囲を指定します
    売上金額の範囲(C2:C100)をマウスでドラッグするか、直接入力します。カンマ(,)で区切ります。
  4. 最初の条件範囲と条件を指定します
    商品名の範囲(A2:A100)を指定し、カンマの後に「”りんご”」と入力します。これで商品名が「りんご」の行に絞られます。
  5. 2つ目の条件範囲と条件を指定します
    月の範囲(B2:B100)を指定し、カンマの後に「”1月”」と入力します。
  6. Enterキーで確定します
    関数の最後に閉じ括弧「)」を入力してEnterキーを押します。合計値が表示されます。

完成した関数は次のようになります。

=SUMIFS(C2:C100, A2:A100, "りんご", B2:B100, "1月")

条件にセル参照を使う方法

条件を直接入力する代わりに、セルを参照することで動的な集計が可能です。例えば、E1セルに商品名、F1セルに月を入力しておき、次のように記述します。

=SUMIFS(C2:C100, A2:A100, E1, B2:B100, F1)

これにより、E1やF1の値を変更するだけで自動的に合計値が更新されるため、繰り返し集計する場合に便利です。

比較演算子を使った条件指定

数値の条件には比較演算子(>=, >, <, <=, =, <>)を使えます。例えば、「売上金額が1000以上」である行だけを合計したい場合は、次のように条件範囲と条件を追加します。

=SUMIFS(C2:C100, A2:A100, "りんご", B2:B100, "1月", C2:C100, ">=1000")

注意点として、比較演算子は文字列としてダブルクォーテーションで囲みます。

SUMIFS関数を使う際の注意点とトラブル対処法

合計範囲と条件範囲のサイズが異なる場合

SUMIFS関数では、合計範囲とすべての条件範囲の行数(または列数)が一致している必要があります。もしサイズが異なると、#VALUE!エラーが発生します。範囲指定時は同じ行数のセル範囲を選択するようにしましょう。

条件にワイルドカードを使うときの注意

文字列の部分一致を行いたい場合は、アスタリスク(*)を条件の一部として使います。例えば、「り」で始まる商品を合計するには条件を「”り*”」と指定します。ただし、ワイルドカードは文字列条件でのみ有効で、数値条件には使えません。

日付を条件にする場合

日付はシリアル値として扱われます。日付を直接条件にする場合は、DATE関数を使うか、日付をシリアル値に変換して比較します。例えば、2024年1月1日以降の日付を条件にするには「”>=” & DATE(2024,1,1)」のようにセル参照と組み合わせると便利です。

空セルや文字列を含むセルがある場合

条件範囲に空セルがあると、条件と一致しないと見なされます。また、文字列が含まれているセルを数値比較しようとするとエラーになります。事前にデータの種類を統一しておくことが重要です。

ADVERTISEMENT

SUMIFSとSUMIFの比較

項目 SUMIF SUMIFS
対応条件数 1つ 複数(最大127)
引数の順序 条件範囲, 条件, 合計範囲 合計範囲, 条件範囲1, 条件1, …
ワイルドカード 使用可能 使用可能
パフォーマンス 条件数が少ない場合は高速 条件が多いとやや遅くなる

SUMIFSはSUMIFの上位互換のような関数で、複数条件を扱える点が最大の違いです。ただし、引数の順序が逆になっているため注意が必要です。特にSUMIFに慣れている方は、うっかり同じ順序で書いてしまうミスがよくあります。

まとめ

この記事では、SUMIFS関数を使って複数条件で合計を求める方法を解説しました。基本構文は「=SUMIFS(合計範囲, 条件範囲1, 条件1, 条件範囲2, 条件2)」で、条件範囲と条件をペアで追加していくだけです。条件にセル参照や比較演算子、ワイルドカードを組み合わせることで、柔軟な集計が可能になります。

次は条件に日付や論理式を組み合わせた応用に挑戦してみるとよいでしょう。また、同様の機能を持つQUERY関数やFILTER関数と使い分けることで、さらに高度なデータ分析ができるようになります。


ADVERTISEMENT

この記事の監修者
✍️

超解決 第一編集部

疑問解決ポータル「超解決」の編集チーム。正確な検証と、現場視点での伝わりやすい解説を心がけています。