COUNTIF関数は条件と一致するデータを数える:Excel関数

COUNTIF関数は条件と一致するデータを数える:Excel関数

COUNTIF関数は、指定した条件と一致するデータを数える関数です。

指定する条件には、比較演算子やワイルドカードも使用できます。

なお、ワイルドカードを条件式で使用する場合は注意点もありますので、ここで詳しく解説していきます。

COUNTIF関数の使い方

対応バージョン:Excel365 2019 2016 2013 2010

COUNTIF関数の書式です。

=COUNTIF(範囲,検索条件)
※カッコ内の「範囲,検索条件」を引数といいます。

それでは、実際のサンプルでCOUNTIF関数の使い方をイメージしましょう。

以下のサンプルは、ポイントカードの利用者の管理表で、そこから男性会員や女性会員などの人数を調べています。

COUNTIF関数の使用例

まず、COUNTIF関数でJ8セルに男性会員の人数を求めます。

=COUNTIF($B$3:$B$16,1)

男性会員数は、「男女別」列(B列)のデータ数をカウントして求めます。男性が1で女性が2と決めているので、引数〔範囲(B3:B16)〕から引数〔検索条件(1)〕で検索し、結果をJ8セルに求めます。

結果は、8となりますが、まあ、この程度のデータ数なら、目視でも数えられます。ただ、データ数が多くなれば多くなるほど人の手では数えられませんので、そうなればCOUNTIF関数は役立つでしょう。

COUNTIF関数で比較演算子を使う

COUNTIF関数の〔検索条件〕に比較演算子を使った例です。

ここでは、「年齢」列(C列)のデータ数をカウントして求めます。

COUNTIF関数で比較演算子を使う

セルJ11~J12には、会員を年齢で区切って、その数を求めます。

30未満と30歳以上に分けて、それぞれの会員数を数えます。

J11セルには以下の数式を入力しています。

=COUNTIF($C$3:$C$16,”<30″)

〔範囲〕は年齢列(C3:C16)で、〔検査条件〕は30歳未満なので「<30」と、比較演算子「<」を使った条件式を書きます。このとき、条件式はダブルクォーテーション(”)を前後に付けて「”<30″」のように指定します。

30歳以上のデータを数えたい場合は、条件式に「”>=30″」と指定します。

COUNTIF関数で使える比較演算子

比較演算子 意味
= 等しい
> より大きい
< より小さい
>= より大きい、もしくは等しい
<= より小さい、もしくは等しい
<> 等しくない

COUNTIF関数でワイルドカードを使う

COUNTIF関数の〔検索条件〕にワイルドカードを使った例です。

ここでは、「住所」列(E列)のデータ数をカウントして求めます。

COUNTIF関数でワイルドカードを使う

住所からワイルドカードを使って、「東で始まる文字列」を数えた例です。

=COUNTIF($E$3:$E$16,”東*”)

特定の文字が含まれるデータを数える場合は、ワイルドカードの「*」を使います。上記の例では、「東」よりも後ろの文字が何であっても数えることができます。

また、「*川」と指定すれば、「川」で終わるデータを検索できます。さらに、「神*川」と指定すれば「神」で始まり「川」で終わるデータを数えることができます。

つまり、文字列の一部が分かっていれば、ワイルドカードを使って数を数えることが可能なのです。これを「あいまい検索」と言います。

なお、ワイルドカードは、検索範囲のデータが数値の場合は上手く機能しません。結果が「0」で返されてしまいます。したがって、特定範囲のデータが数値の場合は、他の方法を使って数を数えるしかありません。

COUNTIF関数で使えるワイルドカード

ワイルドカード 意味 使い方
* 1文字以上の文字列 “A*” Aで始まる文字列
“*A” Aで終わる文字列
“*A*” Aを含む文字列
? 1文字の文字列 “A?” Aで始まる2文字
“?A” Aで終わる2文字
“?A?” Aを含む3文字

COUNTIF関数と同じ分類の関数

COUNTIF関数と同じ「カウント」系の関数は以下のページで探せます。

Excel関数カテゴリの最新記事