エクセル・VBA

COUNTIF(カウントイフ)関数の使い方を詳しく解説|動画解説付き

エクセルのCOUNTIF関数を紹介している女性の画像

今回は、COUNTIF(カウントイフ)関数の使い方を詳しく解説します。

「数字の入力されているセルすべて」を数えるCOUNTとは違い、セルの内容が「○○の場合」のみセルの数を数える関数です。

使えるようになれば、パソコンの画面を指さしながら数える必要はなくなります。

詳しい動画解説

COUNTIF関数(カウントイフ関数)とは

エクセルには「関数」というものがあります。

「関数」には設定した「セル」に文字を打ちこむことで「キーワード」を「別の表」から見つけてきて、設定した他の「セル」に表示させることができる機能があります。

「COUNTIF関数」のまず「COUNT」とは、範囲選択した「セル」の中から数字が入っている「セル」を数えるということです。

「COUNTIF関数」とは、数える範囲の指定をして、範囲選択した「セル」の中から数字が入っている「セル」を数えるということです。

今回は、「COUNT関数」と「COUNTIF関数」の2つの関数の設定をお話しします。

COUNTIFの基本的な使い方(条件に合った文字列や数値の個数を数える)

COUNTIFは条件にあった文字列(もしくは数値)が入力されたセルの個数を数えるための関数です。

例えば以下の表を見てください。これはあるクラスで掃除をした人の名前を記録したものです。

クラスで掃除をした人の名前を記録した表を示すエクセルの画像

いつも同じ人が掃除をしているのは不公平なので、誰が何回掃除をしたのかカウントしたいと思います。

こんな時はCOUNTIFを使いましょう。

まず「掃除をした回数」を入力するためのE3セルを選択します。

「数式」タブ→「その他の関数」→「統計」内のCOUNTIFを選び、ダイアログボックスを表示します。

COUNTIFがある場所を示すエクセルの画像

 

「範囲」の部分にはCOUNTIFで検索する範囲を入力します。

この例の場合はB2~B13です。「B2:B13」と入力するか、範囲を直接ドラッグして指定しましょう。

次に検索条件を入力します。

例えば「南」が入力されているセルの個数を数えたいなら、南と入力するか、南の文字が入力されているセル番地(この例ではD3)を指定します。

ダイアログボックスに引数を入力しているエクセルの画像

画像から分かるように、COUNTIFの文法は基本的に

=COUNTIF(検索範囲,検索条件)

となっています。数式のダイアログボックスを使わず、E3に直接

=COUNTIF(B2:B13,D3)(あるいは=COUNTIF(B2:B13,”南”))と入力してもOKです。

※ちなみに、文字列を検索条件とするときは“南”のように必ずダブルクオーテーションで囲む必要がありますが、数字あるいはセル番地で検索をする場合はダブルクオーテーションは必要ありません。

前述のダイアログボックスを使った方法では、検索条件に文字を入力すると自動的に””が振られます。

これでB2~B13の範囲で南が入力されているセルを数えることができました。南さんは3回掃除をしたことが分かります。同様に佐藤、鈴木、徳永のセル個数を数えることもできます。

関数の入力結果が表示されているエクセルの画像

COUNTIFで「特定の文字で終わる、始まる、含む」セルの個数を数える

COUNTIFの検索条件にはワイルドカードを使うことができます。

ワイルドカードとは任意の文字列の代わりに使われる特殊記号です。

*(アスタリスク)...特定の文字列の代わりになります。

?(クエスチョンマーク)...特定の1文字の代わりになります。

先ほどの掃除表を書き換え、掃除をした人の名前に必ず「藤」の文字が含まれるようにしてみました。

クラスで掃除をした人の名前を記録した表を示すエクセルの画像

まず、「1文字+藤」となるセルの数を数えてみましょう。E3に

=COUNTIF(B2:B13,"?藤")

と入力すればOKです。

※ワイルドカードを使うときはダブルクオーテーションで囲むことを忘れないでください。

ワイルドカード?は任意の一文字の代わりになるので、「佐藤」や「齊藤」をカウントしますが、「ばん藤」はカウントしません。

一方でE6には

=COUNTIF(B2:B13,"*藤")

が入力されています。ワイルドカード*は任意の文字列の代わりになるので、「ばん藤」もカウントしています。

ワイルドカードを使用した結果が表示されているエクセルの画像

また、位置にこだわらず藤を含むセルをカウントしたいときは

=COUNTIF(B2:B13,"*藤*")

と入力します。

藤の前後に任意の文字列(文字数を指定しない)を表す*が付いているので、「藤が丘」や「加藤田」のセルもカウントすることができます。

COUNTIFで以上、以下、未満の条件を設定する方法

COUNTIFでは以上、以下、未満の条件で探したセルを数えることもできます。

下記はCOUNTIFで使える不等号の一覧です。

  • 以上 >=A
  • A以下 <=A
  • A未満 <A
  • Aではない <>A

それでは例を見てみましょう。

以下の表で月間売り上げが50,000円以上の製品が何個あるのかを数えていきます。

月間売上表が表示されているエクセルの画像

5000円以上の商品個数を入力するG3セルに

=COUNTIF(B3:B15,”>=50000”)

の式を入力するとB5~B15のセル範囲から50000以上の数値が入力されたセルの個数を返してくれます。

※このとき検索条件である>=50000の部分はダブルクオーテーション(“)で囲う必要があることに注意してください。

”で囲まれていない場合、エラーになってしまいます。

同じように50000円以下を求めるG4セルには

=COUNTIF(B3:B15,”<=50000”)

50000円未満を求めるG5セルには

=COUNTIF(B3:B15,”<50000”)

を入力します。

B3セルに入力されている50000の数字はG4(条件が”<=50000”)ではカウントされていますが、G5(条件が”<50000”)ではカウントされません。

そのためG4とG5の数字が違っているのが分かります。

ちなみに、この「以上」「以下」「未満」という条件の表し方は日付にも適用することができます。

例えば検索条件に”>=2019/5/1”と入力すると、2019年5月1日以降の日付、つまり令和の日付が入力されたセルの個数を数えることができます。

複数条件を満たすセルの個数を数えるには

COUNTIFを使っても複数条件をつけたセルの数を数えることは不可能ではありません。

例えば以下の表で

=COUNTIF(B3:B15,"<=20000")+COUNTIF(B3:B15,">=80000")

を求めれば、月間売上金額が「20000円以下」「80000円以上」に該当するセルを数えられます。

関数を使用した結果が表示されているエクセルの画像

ただしCOUNTIFで複数条件を表すと式が複雑になり、論理的な間違いを犯す危険性もあります。

仮に複数の検索条件をもとにセルを数えたいというときはCOUNTIFSという別の関数を使うと便利です。

COUNTIFSを使うと

=COUNTIFS(検索範囲1,検索条件1,検索範囲2,検索条件2,...)

というように検索範囲と検索条件をどんどん追加していくことができます。

COUNTIFS関数を使えば、「製品No.が20以上で月間売り上げが50000円以上」というような複数範囲と複数条件のカウントも以下のような式で簡単に求めることができます。

=COUNTIFS(A3:A15,">=20",B3:B15,">=50000")

スプレッドシートでも使えるCOUNTIF

これまではエクセルでの使い方を説明してきましたが、COUNTIFはGoogleスプレッドシートでも使うことができます。

Googleスプレッドシートで使う場合にもエクセルのCOUNTIFと文法構造は全く同じです。

COUNTIFを使えば、手作業で数えるのは困難な長いデータを扱うのに便利です。

以上、以下、ワイルドカード、COUNTIFSなど応用的な使い方もぜひ身に着けてみてください。

全国にあるパソコン教室パレハのサービス一覧

「オンライン」自宅で学べるパソコン教室

オンラインレッスン

オンラインレッスンの詳細はこちら

苦手な方専門パソコン教室

パソコン教室パレハの詳細はこちら

パソコン教室の運営をしませんか?

フランチャイズ

パソコン教室パレハFCの詳細はこちら

「在宅」で自由な働き方しませんか?

在宅ワーク

クラブ・パレハ在宅ワーク詳細はこちら

-エクセル・VBA
-, ,

メールはこちら

LINEはこちら

お電話はこちら

© 2020 パソコン教室パレハ