※本ページにはプロモーション(広告)が含まれています
Googleスプレッドシートでデータを集計するとき、「特定の商品カテゴリだけの売上合計を出したい」「条件に合うデータが何件あるか調べたい」という場面はよくあります。そんなときに使いこなすべき関数がSUMIF・COUNTIF・AVERAGEIFです。
これらは「条件付き集計関数」と呼ばれ、指定した条件に一致するデータだけを対象に合計・カウント・平均を計算できます。ExcelとGoogleスプレッドシートで共通して使える強力な関数です。
この記事では、SUMIF・COUNTIF・AVERAGEIFの基本的な使い方から、複数条件に対応したSUMIFS・COUNTIFS・AVERAGEIFSまで、実践的な例を交えて分かりやすく解説します。関数が初めての方でも理解できるよう、一から丁寧に説明します。

- SUMIF・COUNTIF・AVERAGEIFの構文と基本的な使い方
- 文字列・数値・ワイルドカードを使った条件指定の方法
- 別シートのデータを参照して集計する方法
- 複数条件に対応したSUMIFS・COUNTIFS・AVERAGEIFSの使い方
- 日付範囲を条件にした集計方法
- 売上・アンケート・在庫データへの実践的な活用例
SUMIF関数の基本
SUMIF関数は、指定した範囲の中で条件に一致するセルに対応した合計値を計算する関数です。全データの合計ではなく「特定の条件を満たすデータだけの合計」を出したいときに使います。
SUMIF関数の構文
| 引数 | 説明 | 例 |
|---|---|---|
| 範囲(必須) | 条件を評価するセルの範囲 | A2:A100 |
| 条件(必須) | 合計するかどうかを判断する条件 | “食品”、”>100″、E2 |
| 合計範囲(省略可) | 実際に合計する数値が入ったセルの範囲 | B2:B100 |
「合計範囲」を省略すると、「範囲」と同じセルの値を合計します。条件と合計する列が同じ場合に使います。
文字列条件での使い方
最もよく使われるのが、特定の文字列と一致するデータの合計を求めるケースです。
例:商品カテゴリが「食品」の売上合計
A列にカテゴリ名、B列に売上金額が入っているとします。
この数式は「A2:A100の中で『食品』と書かれているセルに対応するB列の値を合計する」という意味です。
セル参照を条件にする方法:
条件を直接入力する代わりに、セルを参照することもできます。E2セルに「食品」と入力しておいて:
こうするとE2の内容を変えるだけで集計対象を切り替えられます。複数のカテゴリ別集計を作るときに便利です。
数値条件での使い方
数値の大小を条件にして集計することもできます。比較演算子(>、<、>=、<=、=、<>)を使います。
条件の書き方(数値条件の例):
| 条件 | 記述例 | 意味 |
|---|---|---|
| 100以上 | “>=100” | 値が100以上のセルを集計 |
| 100より大きい | “>100” | 値が100を超えるセルを集計 |
| 50未満 | “<50” | 値が50未満のセルを集計 |
| 100と等しい | 100 または “=100” | 値がちょうど100のセルを集計 |
| 100以外 | “<>100” | 値が100でないセルを集計 |
例:単価が1,000円以上の商品の売上合計:
セル参照と演算子を組み合わせる方法:
E2セルに 1000 と入力し、条件をセル参照にしたい場合は文字列結合を使います:
ワイルドカード(*?)を使った部分一致条件
完全一致だけでなく、「〇〇を含む」「〇〇から始まる」などの部分一致条件も設定できます。ワイルドカード文字を使います。
| ワイルドカード | 意味 | 使用例 | マッチ例 |
|---|---|---|---|
| *(アスタリスク) | 0文字以上の任意の文字列 | “東京*” | 東京都、東京新宿、東京タワー |
| ?(クエスチョン) | 任意の1文字 | “?月” | 1月、4月、9月(ただし10月は不一致) |
| ~* または ~? | * または ? を文字として検索 | “価格~*消費税” | 「価格*消費税」という文字列 |
例:商品名に「有機」を含む商品の売上合計:
例:商品コードが「A」から始まるものの売上合計:
別シートのデータを参照する方法
データが別のシートにある場合も、シート名を指定して参照できます。
シート名の後に「!」を付けてセル範囲を指定します。シート名にスペースや日本語が含まれる場合は、シングルクォート(’)で囲みます:
COUNTIF関数の基本
COUNTIF関数は、指定した範囲の中で条件に一致するセルの個数(件数)を数える関数です。「何件あるか」を調べたいときに使います。
COUNTIF関数の構文
SUMIFと異なり、引数が2つだけです。SUMIF の「合計範囲」に相当するものがありません(個数を数えるため)。
特定の値が何件あるかカウントする例
例1:アンケートで「満足」と回答した人の件数:
例2:成績が80点以上の生徒の人数:
例3:特定のメールアドレスドメインの件数:

空白セルのカウント・空白以外のカウント
未入力セルや入力済みセルの件数を数えることもよくあります。
| 目的 | 数式 | 備考 |
|---|---|---|
| 空白セルを数える | =COUNTIF(A2:A100, “”) | 空文字列(””)と完全一致 |
| 空白以外のセルを数える | =COUNTIF(A2:A100, “<>”) | 何らかの値が入っているセル |
| 空白セルを数える(別方法) | =COUNTBLANK(A2:A100) | COUNTBLANK専用関数。より正確 |
COUNTIFで空文字(””)を条件にすると、スペースだけのセルはカウントされません。COUNTBLANKはより厳密に「本当に空のセル」を数えます。用途によって使い分けてください。
AVERAGEIF関数の基本
AVERAGEIF関数は、条件に一致するセルの値の平均値を計算します。「特定の条件を満たすデータの平均」を出したいときに使います。
AVERAGEIF関数の構文
SUMIFとほぼ同じ構造です。「合計範囲」が「平均範囲」に変わっただけです。
条件付き平均の計算例
例1:男性グループの平均点数:
例2:評価が4以上の商品の平均価格:
例3:部門が「営業部」の平均売上:
条件に一致するセルが1つもない場合、#DIV/0! エラーが返されます。これを回避するには、IFERRORで囲みます:
=IFERROR(AVERAGEIF(A2:A100, "営業部", B2:B100), 0)
複数条件の集計(SUMIFS・COUNTIFS・AVERAGEIFS)
1つの条件だけでなく複数の条件を同時に指定したい場合は、末尾に「S」が付く関数(SUMIFS・COUNTIFS・AVERAGEIFS)を使います。これらはAND条件(すべての条件を同時に満たすもの)で絞り込みます。
SUMIFSの構文(条件を複数指定)
SUMIFと引数の順序が異なることに注意してください。SUMIFSでは合計範囲が最初に来ます。
例:「食品」カテゴリかつ売上が1,000円以上の合計:
例:「東京都」の「山田」担当者の売上合計:
COUNTIFSの使い方(AND条件の複数指定)
例:ステータスが「完了」かつ担当者が「田中」のタスク数:
OR条件(いずれかの条件を満たす)の実現方法
SUMIFS・COUNTIFSはAND条件のみ対応しており、OR条件は直接サポートしていません。OR条件を使いたい場合は複数のCOUNTIF/SUMIFを足し算します。
例:カテゴリが「食品」または「飲料」のどちらかの合計:
例:ステータスが「未着手」または「進行中」のタスク件数:
日付範囲を条件にした集計方法
特定の期間のデータだけを集計したいケースはよくあります。日付条件はSUMIFSを使うと、開始日と終了日の両方を指定できます。
例:2026年1月1日から1月31日の売上合計:
日付をセル参照で指定する場合:
(F1に開始日、G1に終了日を入力しておく)
例:今月のデータ件数(TODAY関数と組み合わせ):
実践的な活用例
実際のビジネスシーンでよく使われるSUMIF系関数の活用例を紹介します。
売上データの担当者別・月別集計
A列:日付、B列:担当者名、C列:商品カテゴリ、D列:売上金額 というデータがあるとします。
担当者別の年間売上合計(クロス集計表を作る):
担当者名を別表のH列に並べ、I列に以下の数式を入力します:
H2〜H10に担当者名を入力し、I列に数式をコピーするだけで担当者別集計表が完成します。
月別・担当者別集計(SUMIFS使用):
アンケートデータの回答別カウント
A列:回答者ID、B列:満足度(とても満足/満足/普通/不満/とても不満)というデータで:
各回答の件数と割合を算出:
=COUNTIF($B$2:$B$200, “とても満足”) / COUNTA($B$2:$B$200) ← 割合(パーセント形式で表示)
特定年代かつ特定回答の件数(COUNTIFS):
在庫データの条件付き集計
A列:商品名、B列:カテゴリ、C列:在庫数、D列:単価 のデータで:
在庫が10個未満の商品の在庫合計(補充必要量の把握):
カテゴリ別の在庫金額合計(在庫数×単価):
E列に =C2*D2 のように在庫金額を計算しておいてから:
在庫0(品切れ)商品の件数:

よくある質問(FAQ)
Q1. SUMIF関数でエラー(#VALUE!)が返ってきます。どうすれば直りますか?
主な原因は以下の通りです。
- 範囲と合計範囲のサイズが一致しない:A2:A100 と B2:B50 のように行数が違うとエラーになります。必ず同じ行数にしてください
- 条件の書き方が間違っている:数値条件(>100 など)はダブルクォートで囲む必要があります。例えば >=100 ではなく “>=100” と書きます
- 合計範囲に文字列が混在している:計算対象の列に数値以外が入っているとエラーになる場合があります
Q2. COUNTIFで大文字・小文字を区別してカウントしたいのですが可能ですか?
残念ながら、COUNTIF関数は大文字・小文字を区別しません。”apple” と “Apple” と “APPLE” は同じと判断されます。大文字・小文字を区別してカウントしたい場合は、SUMPRODUCT関数とEXACT関数を組み合わせます:
Q3. 条件に合わないデータがあった場合、合計には含まれますか?
いいえ。SUMIF・COUNTIF・AVERAGEIFは条件に一致したデータだけを集計し、条件に一致しないデータは完全に無視されます。これが通常のSUM・COUNT・AVERAGE関数との違いです。
Q4. 日付を条件に使うとうまく機能しないことがあります。
Googleスプレッドシートで日付を条件に使う際は、日付の形式に注意が必要です。条件として日付を直接文字列で書くと認識されないことがあります。DATE関数を使うか、セル参照を使うと安全です:
Q5. SUMIFS関数とSUMIF関数は、どちらを使えばよいですか?
条件が1つだけなら SUMIFでもSUMIFSでもどちらでも動きますが、SUMIFSを使うことを習慣にすることをおすすめします。理由は以下の通りです:
- 後から条件を追加する際にSUMIFSのほうが拡張しやすい
- SUMIFSの引数順序(合計範囲→条件範囲→条件)を覚えると、COUNTIFS・AVERAGEIFSにも応用できる
- パフォーマンス面でも差は少ない
Q6. 別ファイル(別スプレッドシート)のデータを参照してSUMIFを使うことはできますか?
はい、可能です。ただしGoogleスプレッドシートで別ファイルを参照する場合はIMPORTRANGE関数を組み合わせる必要があります:
ただし、IMPORTRANGEは読み込みに時間がかかるため、大量データの場合は重くなることがあります。可能であれば同一ファイル内にデータをまとめることをおすすめします。
Q7. 複数条件でOR(またはいずれか)を使ってSUMIFSを実行したい場合は?
SUMIFSはAND条件のみ対応です。OR条件で集計するには次の方法があります:
方法1:SUMIF同士を足し算
方法2:SUMPRODUCT関数を使う
まとめ
Googleスプレッドシートの条件付き集計関数(SUMIF・COUNTIF・AVERAGEIF・SUMIFS・COUNTIFS・AVERAGEIFS)を使いこなすと、データ分析の幅が大きく広がります。
- SUMIF:条件に一致するデータの合計。=SUMIF(範囲, 条件, 合計範囲)
- COUNTIF:条件に一致するデータの件数。=COUNTIF(範囲, 条件)
- AVERAGEIF:条件に一致するデータの平均。=AVERAGEIF(範囲, 条件, 平均範囲)
- SUMIFS/COUNTIFS/AVERAGEIFS:複数条件(AND)に対応した版。大量データの分析に必須
- ワイルドカード(* ?)で部分一致条件を指定できる
- 日付条件にはDATE関数またはセル参照を使うと確実
- OR条件はSUMIF同士を足し算で対応
最初はSUMIFとCOUNTIFの基本形から練習し、慣れてきたら複数条件のSUMIFS・COUNTIFSに挑戦してみてください。これらの関数をマスターすることで、手作業でのデータ集計から解放され、業務効率が大幅に向上します。
minto.tech スマホ(Android/iPhone)・PC(Mac/Windows)の便利情報をお届け! 月間アクセス160万PV!スマートフォン、タブレット、パソコン、地デジに関する素朴な疑問や、困ったこと、ノウハウ、コツなどが満載のお助け記事サイトはこちら!