cellio

ExcelのCOUNTIFS関数の使い方!複数条件でカウントする方法

ExcelのCOUNTIFS関数で複数条件を満たすデータをカウントする方法を解説。数値の範囲指定や日付の期間指定、OR条件の作り方、クロス集計表の作成手順までわかりやすく紹介します。

著者 Ayoub Farid · · 4 分で読めます

COUNTIFS関数は、指定したすべての条件を満たす行(セル)の個数を数えるExcel関数です。「3ドル以上のコーヒーの注文は何件あるか?」「3月に受付されて、現在も対応中の案件はいくつあるか?」といった集計に役立ちます。単一条件で集計するCOUNTIF関数を、複数条件に対応できるように拡張したものだと考えるとイメージしやすいでしょう。

構文

=COUNTIFS(range1, criteria1, range2, criteria2, ...)

指定するそれぞれのセル範囲は、すべて同じサイズ(行数・列数)である必要があります。

基本的な使い方の例

ABC
1商品カテゴリ価格
2エスプレッソコーヒー2.50
3ラテコーヒー3.50
4モカコーヒー4.00
5マフィンフード3.00

価格が3ドルを超えるコーヒーの品数を数えるには、次のように入力します。

=COUNTIFS(B2:B5,"Coffee",C2:C5,">3")   → 2

2つの数値の間(以上・以下)を指定する

同じセル範囲を2回指定することで、数値の範囲を絞り込めます。

=COUNTIFS(C2:C100,">=10",C2:C100,"<=20")

2つの日付の間(期間)を指定する

セルF1に開始日、セルF2に終了日が入力されている場合は、次のように記述します。

=COUNTIFS(D2:D500,">="&F1,D2:D500,"<="&F2)

比較演算子とセルを結合するために「&」を使います。これは、月ごとの件数を集計する際の定番パターンです。

OR条件(いずれかを満たす)を指定する方法

COUNTIFS関数は基本的に「AND条件(すべて満たす)」として処理されます。「コーヒー または お茶」のようなOR条件でカウントしたい場合は、2つのCOUNTIF関数を足し算します。

=COUNTIF(B2:B100,"Coffee")+COUNTIF(B2:B100,"Tea")

または、配列定数を使って1つの数式にまとめることも可能です。

=SUM(COUNTIFS(B2:B100,{"Coffee","Tea"}))

集計表を作成する

セルF2:F4にカテゴリ一覧、セルG1:I1に各月を並べた集計表を作成する場合、セルG2に以下の数式を入力します。

=COUNTIFS($B$2:$B$500,$F2,$D$2:$D$500,G$1)

「$」記号を適切に付けることで、右や下へオートフィルして数式をコピーしても参照先がずれません。これは複合参照の便利な活用例です。

よくあるミス

  • セル範囲のサイズが異なる: エラー「#VALUE!」が発生します。
  • 検索条件に日付を直接文字列で入力している: ">="&DATE(2026,3,1)のようにDATE関数を使うか、日付が入ったセルを参照してください。
  • OR条件のつもりで指定している: COUNTIFS関数は常にAND条件として判定されます。

よくある質問

Excelで2つの条件を指定してカウントするにはどうすればよいですか?

=COUNTIFS(条件範囲1, 条件1, 条件範囲2, 条件2)と入力します。例えば、=COUNTIFS(B:B,"Coffee",C:C,">3")のように指定します。

COUNTIFS関数でOR条件は使えますか?

直接OR条件を指定することはできません。複数のCOUNTIFS関数を「+」で足し算するか、条件を波括弧で囲んだ配列として渡し、SUM関数で合計してください。

COUNTIFS関数で特定の月のデータをカウントするには?

「月初日以上」と「月末日以下」という2つの日付条件を指定して集計します。

GoogleスプレッドシートでもCOUNTIFS関数は使えますか?

はい、Googleスプレッドシートでもまったく同じ構文で使用できます。

あわせて読みたい