ExcelのCOUNTIF関数の使い方|条件に合うセルを数える方法

スポンサーリンク

「”出席”って入力されたセルを数えたいんだけど、手で数えるしかないの?」と思ったことはありませんか。データが増えるほど目視で拾うのは大変ですし、数え間違いも心配ですよね。

そんなときに使えるのがCOUNTIF関数です。条件を1つ指定するだけで、範囲内の一致するセルの個数を一瞬で返してくれます。

この記事では、COUNTIF関数の基本から実務での活用パターンまでまとめて解説します。条件指定のバリエーションやエラー対処法もカバーしています。

この記事は次のような人におすすめ

  • 特定の文字列や数値に一致するセルの個数を数えたい
  • ワイルドカードを使ったあいまい検索で数えたい
  • 重複データのチェックにCOUNTIF関数を活用したい
  • COUNTIF関数とCOUNTIFS関数の違いがよくわからない

COUNTIF関数とは?

COUNTIF関数は、指定した範囲内で条件に一致するセルの個数を返す関数です。読み方は「カウントイフ」で、COUNT(数える)+ IF(もし)が由来です。

たとえば、出欠表の回答欄に「出席」と入力されたセルが何個あるか数えたいとします。COUNTIF関数なら条件を1つ書くだけで、一致するセルの個数がすぐにわかります。

ポイントは条件を1つだけ指定できるという点です。「80点以上」「”東京”を含む」のように、文字列一致・数値比較・ワイルドカードなど条件の幅が広いのも特長です。

NOTE

COUNTIF関数はExcel 2007以降のすべてのバージョンで使用できます。Googleスプレッドシートでも同じ書式で利用可能です。

COUNTIF関数の書き方(構文と引数)

基本構文

=COUNTIF(範囲, 検索条件)

引数の説明

引数必須/省略可説明
範囲必須条件を検索するセル範囲
検索条件必須カウントの条件(文字列・数値・セル参照・比較式)

引数は2つだけなので、覚えやすいのもCOUNTIF関数のよいところです。

検索条件の指定パターン

検索条件にはいくつかの書き方があります。ここで整理しておきましょう。

条件の種類書き方の例意味
文字列と完全一致"出席"「出席」と一致するセル
セル参照E1E1の値と一致するセル
数値と比較">=80"80以上のセル
以外(不一致)"<>出席"「出席」以外のセル
ワイルドカード"東京"「東京」を含むセル
ワイルドカード"山?太郎"「山」+任意の1文字+「太郎」に一致

数値比較やワイルドカードを使うときは、条件全体をダブルクォーテーションで囲むのがポイントです。

COUNTIF関数の基本的な使い方

ここでは出欠管理表を使って基本的な動作を確認します。

文字列と完全一致するセルを数える

B列に「出席」「欠席」「未定」が入っている場合を考えます。

=COUNTIF(B2:B30, "出席")

B2からB30の中で「出席」と入力されたセルの個数を返します。大文字・小文字は区別されません。

数値を比較してカウントする

C列にテストの点数が入っている場合に、80点以上の人数を数えます。

=COUNTIF(C2:C30, ">=80")

比較演算子(>=, <=, >, <, <>)を使うときは、演算子と数値をまとめてダブルクォーテーションで囲みます。

セル参照を条件にする

条件を直接書く代わりに、別のセルの値を条件にすることもできます。

=COUNTIF(B2:B30, E1)

E1に「出席」と入力しておけば、条件を変えたいときにE1の値を書き換えるだけで済みます。

ワイルドカードであいまい検索する

「東京」を含むセルをすべて数えたいときは、ワイルドカード(*)を使います。

=COUNTIF(A2:A30, "*東京*")

「東京都」「東京支店」「南東京営業所」など、「東京」が含まれるセルをすべてカウントします。任意の1文字だけ許容したいときは?を使います。

COUNTIF関数の実務活用パターン

重複チェック ── 同じ値が2つ以上あるか調べる

データの重複を見つけたいときに便利なテクニックです。名前やコードの列で同じ値が2回以上出現するかを判定します。

=COUNTIF(A:A, A2) > 1

この数式をA2の横のセルに入れると、A列全体でA2と同じ値が2つ以上ある場合にTRUEが返ります。下方向にコピーすれば、重複がある行をまとめて検出できます。

条件付き書式と組み合わせると、重複行を色付きで強調表示できます。「ホーム」タブの「条件付き書式」から「新しいルール」を選びます。数式に =COUNTIF(A:A, A2)>1 を設定してみてください。

出欠集計 ── ステータスごとの人数を数える

出欠表で「出席」「欠席」「未定」の人数をそれぞれ数えるケースです。

=COUNTIF(B2:B50, "出席")
=COUNTIF(B2:B50, "欠席")
=COUNTIF(B2:B50, "未定")

3つの数式を並べるだけで、ステータスごとの集計表が完成します。回答が増えても自動で更新されるので、手動で数え直す必要はありません。

条件付きカウント ── しきい値で分類する

売上データで「目標達成(100万円以上)」の件数を数えるケースです。

=COUNTIF(C2:C100, ">=1000000")

逆に目標未達の件数を知りたい場合は、条件を "<1000000" に変えるだけです。

セル参照を使えば、しきい値を柔軟に変更できます。

=COUNTIF(C2:C100, ">="&E1)

E1に目標額を入力しておけば、値を変えるたびに結果が自動で切り替わります。">="&でセル参照をつなげるのがポイントです。

空白セルを数える

COUNTIF関数で空白セルを数えることもできます。

=COUNTIF(B2:B30, "")

検索条件に空文字列("")を指定すると空白セルがカウントされます。空白セルのカウント専用のCOUNTBLANK関数もあわせて覚えておくと便利です。

よくあるエラーと対処法

COUNTIF関数自体がエラーを返すケースは多くありません。ただし「結果がおかしい」というトラブルはよく起こります。

症状原因対処法
カウント結果が0になる条件の文字列が全角/半角で不一致ASC関数(半角に統一)やJIS関数(全角に統一)で揃える
カウント結果が0になる数値が文字列として格納されている「区切り位置」機能やVALUE関数で数値に変換する
カウント結果が多すぎる大文字/小文字を区別していないCOUNTIF関数は大文字・小文字を区別しない仕様。区別したい場合はSUMPRODUCT+EXACT関数を使う
#VALUE! エラー検索条件の文字列が255文字を超えている条件を短くするか、SUMPRODUCT関数で代替する
想定と結果が合わないワイルドカード文字(*や?)がデータに含まれている~*~? でエスケープする

全角・半角の不一致に注意

COUNTIF関数は全角と半角を別の文字として扱います。「ABC」と「ABC」は一致しません。CSVファイルを取り込んだあとに起きやすいトラブルです。

ASC関数で半角に統一するか、JIS関数で全角に統一してから数えると確実です。

ワイルドカードのエスケープ

データに「*」や「?」がそのまま含まれている場合、ワイルドカードとして解釈されてしまいます。文字としてマッチさせたいときは、直前にチルダ(~)を付けてください。

=COUNTIF(A2:A30, "~*")

この数式は「*」という文字が入ったセルだけを数えます。

COUNTIF関数と似た関数の違い・使い分け

COUNT系関数の比較表

関数名カウント対象条件指定主な用途
COUNT関数数値セルなし数値の入力数を数える
COUNTA関数空白でないセルなし入力済みセルを数える
COUNTBLANK関数空白セルなし未入力セルを数える
COUNTIF関数条件に合うセル1つ「出席」や「>=80」など条件付き
COUNTIFS関数条件に合うセル複数「A組かつ80点以上」など複数条件

COUNTIFとCOUNTIFSの違い

もっとも混同しやすいのがこの2つです。

  • COUNTIF: 条件を1つだけ指定できる
  • COUNTIFS: 条件を複数指定できる(範囲と条件のペアを繰り返す)

「部署が"営業"の人数」ならCOUNTIFで十分です。「部署が"営業"かつ売上100万以上」のように条件が2つ以上になったらCOUNTIFS関数に切り替えましょう。

=COUNTIFS(A2:A30, "営業", C2:C30, ">=1000000")

COUNTIFとSUMIFの違い

条件に一致するセルを「数える」のがCOUNTIF、条件に一致するセルの値を「合計する」のがSUMIF関数です。

=COUNTIF(A2:A30, "営業")     …営業の「件数」
=SUMIF(A2:A30, "営業", C2:C30) …営業の「売上合計」

「何件あるか」を知りたいときはCOUNTIF、「いくらあるか」を知りたいときはSUMIFと覚えるとわかりやすいです。

まとめ

COUNTIF関数は「条件に一致するセルの個数を数える」便利な関数です。

  • 構文: =COUNTIF(範囲, 検索条件)
  • 文字列一致・数値比較・ワイルドカードなど条件の幅が広い
  • 重複チェック・出欠集計・しきい値分類など実務で活躍する場面が多い
  • 条件が2つ以上必要ならCOUNTIFS関数に切り替える
  • 条件に一致する値を合計したいときはSUMIF関数を使う

まずは「特定の文字列を数える」ところから試してみてください。条件の書き方を覚えるだけで、集計作業がぐっとラクになりますよ。

Excel関数一覧

関数の一覧は以下の記事からどうぞ。

エラー値についてのまとめ記事

エラーの種類と対処方法をまとめています。

タイトルとURLをコピーしました