Excelで複数条件の件数を数えたいときはないでしょうか。
けど、そんな中で悩むことは、
・COUNTIF関数では条件を1つしか指定できない
・日付の範囲や空白セルの扱いでつまずく
ですよね。
今回はそんなお悩みを解決する
についてまとめます!
完成イメージ
アンケート結果から「部署」と「性別」のような複数の条件をすべて満たす行の件数を数えたいとき、条件を1つしか指定できないCOUNTIF関数では対応できません。
今回は
・複数条件をすべて満たす行の件数を数える方法(=COUNTIFS(条件範囲1, 条件1, 条件範囲2, 条件2, …))
をゴールにします。
条件が増えても、引数を続けて書くだけで数えられるようになります。
なお、毎回数式を組み立てるのが手間な方向けにVBAで条件を指定して一括集計する方法と、うまくいかないときの対処法(トラブルシュート)もあわせてご紹介します。
早速実装して試してみましょう!

上の画像が完成形です。2条件・3条件・日付の範囲・空白の除外まで、COUNTIFSでまとめて件数を数えられています。
もくじ
STEP1. 元データを用意する
まずは件数を数えたいアンケート結果を用意します。
1行目が見出しで、A列が回答日、B列が部署、C列が性別、D列が年代です。
2行目以降に15件のデータが入っています。
C列の性別には、あえて2件だけ空欄を混ぜてあります。
空欄の扱い方はSTEP6で確認します。
下の表をコピーして貼り付ければ、同じデータをすぐに用意できます。

下の表をコピーして、Excelのシートに貼り付けるとそのまま試せます。
| 回答日 | 部署 | 性別 | 年代 |
|---|---|---|---|
| 2026/4/1 | 営業部 | 男性 | 20代 |
| 2026/4/2 | 総務部 | 女性 | 30代 |
| 2026/4/3 | 営業部 | 男性 | 40代 |
| 2026/4/5 | 開発部 | 女性 | 20代 |
| 2026/4/8 | 営業部 | 30代 | |
| 2026/4/10 | 開発部 | 男性 | 50代 |
| 2026/4/12 | 総務部 | 女性 | 40代 |
| 2026/4/15 | 営業部 | 女性 | 30代 |
| 2026/4/18 | 開発部 | 20代 | |
| 2026/4/20 | 営業部 | 男性 | 20代 |
| 2026/4/22 | 総務部 | 男性 | 50代 |
| 2026/5/2 | 営業部 | 女性 | 30代 |
| 2026/5/5 | 開発部 | 男性 | 40代 |
| 2026/5/8 | 総務部 | 女性 | 20代 |
| 2026/5/12 | 営業部 | 男性 | 30代 |
※ 数式で求める列は空にしています。すでに値が入っている列はそのまま残して試せます。
STEP2. 集計エリアを用意する
件数を表示する場所を、データの下に用意します。
今回は「2条件」「3条件」「日付の範囲」「空白の除外」の4パターンと、COUNTIF関数との比較用の行を並べます。
18行目が見出し、19行目以降が各パターンの条件欄です。
条件はB列・C列・D列に入力し、E列の件数にCOUNTIFSの数式を入れていきます。

STEP3. 2つの条件で数える
まずは「部署=営業部」かつ「性別=男性」の件数を数えます。
件数を入れるセルはE19です。
数式バーに次のように入力します。
=COUNTIFS($B$2:$B$16, B19, $C$2:$C$16, C19)
COUNTIFSには合計する範囲はありません。
「条件範囲, 条件」のペアを、条件の数だけ続けて書きます。
1つめの条件が「部署=営業部」(B列とB19)、2つめが「性別=男性」(C列とC19)です。
条件の値は直接書かずセルを参照しておくと、あとから条件を変えるだけで使い回せます。

E19セルに件数が表示されました。
「営業部」かつ「男性」は4件になりました。
条件に合わない行は数えられていません。
カンタンですね。

STEP4. 条件を3つに増やす
条件はいくつでも増やせます。
「部署=営業部」「性別=女性」に加えて「年代=30代」も指定してみましょう。
件数を入れるセルはE20です。
=COUNTIFS($B$2:$B$16, B20, $C$2:$C$16, C20, $D$2:$D$16, D20)
3つめの条件「年代=30代」は、D列の条件範囲とD20をペアで追加しただけです。
条件を増やすときは、この「条件範囲, 条件」のペアを足すだけでOKです。
最大127個まで指定できます。

3条件の件数は2件になりました。
条件が3つになっても、数式の考え方は2条件のときと同じです。

STEP5. 日付の範囲で絞る
日付の列は、条件に比較演算子を付けて範囲で絞れます。
ここではB21セルに2026/4/1、C21セルに2026/4/30を入れて、4月中の回答を数えます。
=COUNTIFS($A$2:$A$16, ">="&B21, $A$2:$A$16, "<="&C21)
比較条件は半角の記号をダブルクォーテーションで囲み、条件セルと「&」でつなぐのがポイントです。
「4/1以上」かつ「4/30以下」の件数は11件になりました。
「<」「>」を使えば、その日より前・後だけを数えることもできます。

STEP6. 空白セルを除外する
性別が未回答の行を除いて数えたいときは、条件に「<>」を使います。
「<>」は「空白以外」という意味です。
ここではB22セルに営業部、C22セルに<>を入れて、営業部のうち性別が入力されている行を数えます。
=COUNTIFS($B$2:$B$16, B22, $C$2:$C$16, C22)
営業部は7件ありますが、そのうち性別が空欄の1件が除かれて6件になりました。
空欄をそのまま数えてしまうと件数がずれるので、ここはよく使うテクニックです。

STEP7. COUNTIF関数との違いを押さえる
似た関数にCOUNTIF関数がありますが、指定できる条件の数が違います。
COUNTIFは条件を1つだけ、COUNTIFSは条件を複数指定できます。
参考として、E23にはCOUNTIFで「部署=営業部」を数えた結果を入れてあります。
=COUNTIF($B$2:$B$16, B23)
| 項目 | COUNTIF関数 | COUNTIFS関数 |
|---|---|---|
| 書式 | =COUNTIF(条件範囲, 条件) | =COUNTIFS(条件範囲1, 条件1, …) |
| 指定できる条件 | 1つだけ | 最大127個 |
| 複数条件 | できない | できる(すべて満たす=AND条件) |
| 使いどころ | 条件が1つのとき | 条件が2つ以上のとき |
COUNTIFの結果は7件で、これは「営業部」すべてを数えた件数です。

VBAで条件を指定して一括集計する
条件を変えながら何度も数えるときは、VBAでボタン化しておくとラクです。
下のコードは「営業部」かつ「男性」の件数をE19に書き出す例です。
Sub CountIfsDemo()
Dim ws As Worksheet
Set ws = ActiveSheet
ws.Range("E19").Value = Application.WorksheetFunction.CountIfs( _
ws.Range("B2:B16"), "営業部", ws.Range("C2:C16"), "男性")
End Sub
毎月の集計など、決まった条件で繰り返し数えるときに向いています。
うまくいかないときの対処法(トラブルシュート)
実際に試すと、思ったとおりの件数にならないこともあります。
よくあるつまずきと対処法をまとめました。
| 症状 | 原因 | 対処 |
|---|---|---|
| 件数が0になる | 条件範囲の行数がバラバラになっている | すべての範囲を $B$2:$B$16 のように行数を揃える |
| 比較条件が効かない | 数値をそのまま >100 と書いている | 「>=100」のようにダブルクォーテーションで囲む |
| 空白まで数えてしまう | 条件に “” を使っている | 空白以外を数えるなら <> を使う |
| 件数が多すぎる | 条件の文字に余分なスペースが入っている | 条件の文字列を確認し、TRIMで整える |
| 条件を増やしたら0件になった | すべて満たすAND条件のため | 条件の組み合わせを見直す(OR条件は別々に数えて合計) |
| #VALUE!になる | 条件範囲ごとに大きさが違う | 各範囲の開始行・終了行を同じにする |
関数の説明
今回使う2つの関数の概要です。
引数の違いを押さえておきましょう。
COUNTIFS関数(カウントイフズ)
| 書式 | =COUNTIFS(条件範囲1, 条件1, [条件範囲2, 条件2], …) |
|---|---|
| できること | 複数の条件をすべて満たすセルの個数を数えます。 |
| 戻り値 | 件数(数値) |
| こんなときに | 「部署」と「性別」など、2つ以上の条件で数えたいとき。 |
| 注意 | すべての条件範囲を同じ行数にしてください。ずれると #VALUE! になります。 |
=COUNTIFS($B$2:$B$16, "営業部", $C$2:$C$16, "男性")
COUNTIF関数(カウントイフ)
| 書式 | =COUNTIF(条件範囲, 条件) |
|---|---|
| できること | 1つの条件を満たすセルの個数を数えます。 |
| 戻り値 | 件数(数値) |
| こんなときに | 条件が1つだけのとき。 |
| 注意 | 条件を2つ以上にしたいときはCOUNTIFSを使います。 |
=COUNTIF($B$2:$B$16, "営業部")
完成
5つのパターンの件数がすべて求まりました。
「営業部×男性」が4件、そこに「30代」を加えると2件です。
4月中の回答は11件、営業部で性別入力済みは6件、COUNTIFの「営業部」は7件になりました。
条件を変えるときは、条件欄のセルを書き換えるだけです。
数式はそのまま使い回せるので、集計作業がぐっとラクになります。

さいごに
いかがでしょうか。
今回は、
についてまとめました。
まずは今回のサンプル表で、ぜひ一度試してみてください。
条件をセル参照にしておくと、条件を差し替えるだけで何度でも数えられます。
また、他にも便利なExcelの時短テクニックがありますので、よろしければご参照頂ければと思います。







コメントを残す