「営業部の人は何人いるか」「80点以上は何人か」のように、条件に合うセルの個数を数えたいことがあります。結論から言うと、COUNTIF関数は=COUNTIF(範囲,検索条件)の2つの引数で、範囲の中から条件に一致するセルの個数を数える関数です。この記事では基本の使い方と、比較演算子・ワイルドカードを使った条件の書き方を解説します。
目次
COUNTIF関数の基本構文
次のような社員の点数表(A1:C6)を例に見ていきます。
| A(氏名) | B(部署) | C(点数) | |
|---|---|---|---|
| 2 | 佐藤 | 営業 | 82 |
| 3 | 鈴木 | 総務 | 68 |
| 4 | 田中 | 営業 | 91 |
| 5 | 山本 | 経理 | 55 |
| 6 | 伊藤 | 営業 | 74 |
B列(部署)が「営業」の人数を数えるには、次のように書きます。
=COUNTIF(B2:B6,"営業")
営業は佐藤・田中・伊藤の3人なので、「3」が返ります。文字列の条件は「”」(ダブルクォーテーション)で囲みます。
COUNTIF関数で「以上」「以外」を条件にする書き方
A列=氏名、B列=部署、C列=点数という対応で、条件の書き方を変えた例を並べます。
| 数えたいもの | 数式 | 結果 |
|---|---|---|
| C列の点数が80以上 | =COUNTIF(C2:C6,">=80") |
2(佐藤・田中) |
| B列の部署が営業以外 | =COUNTIF(B2:B6,"<>営業") |
2(鈴木・山本) |
| A列の氏名に「藤」を含む | =COUNTIF(A2:A6,"*藤*") |
2(佐藤・伊藤) |
比較演算子(>=、<>など)は条件と一緒に「”」で囲みます。「*」は任意の文字列、「?」は任意の1文字を表すワイルドカードです。
基準の点数を別のセル(たとえばF2に「70」)に入れておき、その値以上を数えたいときは、演算子とセルを「&」でつなぎます。
=COUNTIF(C2:C6,">="&F2)
C列で70以上は82・91・74なので「3」が返ります。F2の数字を変えるだけで基準を切り替えられるので便利です。
COUNTIF関数のよくある注意点
- 条件を2つ以上にしたいときはCOUNTIFS: 「営業部で、かつ80点以上」のように複数の条件を同時に満たす個数は、COUNTIFSで複数条件を満たすセルの個数を数える方法で解説しているCOUNTIFSを使います。
- ワイルドカードは「一部を含む」ものも数えてしまう: 「*iPhone*」は「iPhoneSE」も数えます。選択肢の文字列同士が含み合う場合の対処はアンケートの複数回答(カンマ区切り)をCOUNTIFで集計する方法を参照してください。
- 余分なスペースがあると一致しない: 「営業 」のように末尾にスペースが入ったセルは「営業」と一致せず、数えられません。数が合わないときは、セルの中身の空白を確認しましょう。
- 大文字と小文字は区別されない: 「apple」と「APPLE」は同じものとして数えられます。
- 255文字を超える文字列は正しく照合できない: 長い文章を条件にすると誤った結果になることがあるため、短いキーワードで条件を作りましょう。
COUNTIF関数が登場する記事
- アンケートの複数回答(カンマ区切り)をCOUNTIFで集計する方法
- COUNTIFSで複数条件を満たすセルの個数を数える方法(複数条件版のCOUNTIFS)
- グループごとの順位付け(RANKIFの代用)をCOUNTIFSで行う方法(COUNTIFSの応用)
COUNTIF関数の使い方まとめ
COUNTIF関数は=COUNTIF(範囲,検索条件)で、条件に合うセルの個数を数えます。「>=80」のような比較演算子や「*」のワイルドカード、「&」でのセル参照を組み合わせると、さまざまな条件に対応できます。個数ではなく合計を条件付きで求めたい場合は、サイトの人気記事エクセルのsumifs関数でOR条件の集計をする方法、条件付きで中央値を求めたい場合はエクセル関数で条件付きで中央値(MEDIAN)を計算する方法もあわせてご覧ください。






