はじめに
エクセル業務を行っていて、特定の条件に一致するデータのセルの数を知りたいという場面は非常に多いです。
「◯と✕が混在したセル範囲に含まれる◯の数を表示したい」といったケースです。
そこで、今回は特定の条件に一致するセルの数を数えて返すエクセル関数、COUNTIF関数の使い方や機能を擬人化キャラクターを用いて解説していきます!
エクセル関数 COUNTIF関数

キュウさんおつかれのようですね

そうなんですよ~。
実はエクセルシートに「◯」と「✕」が入力されていて、「◯」の数を調べるということをやっていて・・・

それはなかなか手間な作業ですね。
それで、どうやって進めているんですか?

IF関数でセルの中身が「◯」の時に数字の1を表示させる数式が入った作業列を作ってSUM関数で足しています。

その方法でも計算できますね!
しかしCOUNTIF関数なら作業列なしで計算ができますよ!

え~っ!?
使い方を知りたいです!

では、COUNTIF関数の擬人化キャラクターに登場してもらいましょう!
条件の一致するデータが入っているセルをカウント


COUNTIF関数です、宜しくおねがいします。
リングはどこですか?カウント対象データの特徴は?

今はワークシートの上じゃないですよ!
COUNTIFさんはCOUNTAさんと同じボクサーなんですね!

カウントするという点では同じですが、私は手当り次第のCOUNTAとは違って条件に一致するデータのみをカウントします。
下の図を見て下さい。

[例で使用されている数式]
=COUNTIF(B2:D6,F2)

この図の数式ではセル範囲「B2:D6」の中から参照先のセルに入っているデータ(セルF2なら「◯」、セルF3なら「✕」)と一致するデータが入っているセルの数を数えて返しています。

1、2・・・そうですね!

さっきのキュウさんの方法ではIF関数が入った作業列とSUM関数を使っていましたが、COUNTIFさんに依頼すれば1セルで完結できて便利ですね!

これはすっごく助かります・・・!


こっ、
これが仕事だから当然ですよ。
ワイルドカードを使った条件に一致するセルをカウント

条件を絞った正確なカウントの他に、ワイルドカードを用いた部分一致でもカウントもできるんですよね?

はい、部分一致での範囲を広めたカウントも可能です。
下の図をご覧ください。

[例で使用されている数式]
=COUNTIF(B2:B6,"*りんご*")
=COUNTIF(B2:B6,"*"&D5&"*")

このシートの例では私はワイルドカードを用いた条件に一致するデータの入ったセルの数を返しています。

すいません、ワイルドカードってなんですか・・・?

トランプで他のカードの代わりに使える特別なカードを指す言葉ですが、COUNTIFさんに条件指定をする場合は任意の文字列、ということになります!

任意の・・・っていうことはどんな文字でも良いということですか?

そうです。
更に言うと「*」は0文字以上の任意の文字列で、「?」だと任意の文字列であり文字数が1文字の文字列になります。

文字数を限定するかしないかという点が違いますね。

えっと、たとえば「赤りんご袋入」という文字列がある時に「*りんご*」の条件なら一致、「?りんご?」の条件なら不一致・・・ということですか?

その通りです、合っています。
「りんご」のあとの「袋入」が2文字なので末尾の「?」が表す1文字とは不一致になりますね。

なかなか感覚を掴めないと思うので、エクセルの本やサイトを参考にしたり実際に数式を書いて試してみると良いですよ!
おすすめのサイトを掲載しておきますね!
【外部リンク】COUNTIF関数(検索条件に一致するセルの個数)|エクセルの神髄

ちょっとだけワイルドになって、ひろくデータの一致を判定する感じですね!

その理解で良いのかちょっと違和感ありますけど・・・まぁそんな感じです。
演算子を用いた条件を満たす数値のセルをカウント

文字列だけじゃなく、数値を対象にしたカウントもできるんですよ。

数値ですか・・・。
「100」が何個あるかカウントできるということですか?

なんか・・・リアクションがイマイチですね。
数値の場合、たとえば「100以上の数値」が入ったセルの数をカウントすることができますよ。

え、それはすごい!!
本当にそんな難しいことが!?

もっ…もちろんです。
ご説明しますので、下の図を見てください。

[例で使用されている数式]
=COUNTIF(B2:B6,">="&D5)

この図の例では「100」を探す式と「100以上」を探す式が入力されていて、それぞれカウントした結果を返しています。

これって図のように小さい順に並んでなくても「100以上」をカウントできるんですよね!?
すごく便利じゃないですか!

ま、まぁこのくらいはできて当然です。
他にも演算子「<>」を使って指定した文字列や数値に等しくないデータが入ったセルの数を数えることも可能です。

キュウさん大興奮のようですね!
ワイルドカードを使った判定は以前紹介したSUMIFさんも得意なので覚えておくと便利ですよ!

過去に作ったファイルがいくつか改善できそうです!

新しい知識を改善に使うのは知識の定着にもなりますから一石二鳥ですね!

ところであなた方、年齢はいくつですか?
カウントの依頼を受けています

えー!?
数字のみ16桁以上の文字列の違いを区別できない仕様
これはTwitterで教わったのですが、COUNTIF関数は数字のみで構成される16桁以上の文字列では末尾の違いを区別できない(先頭15桁が一致していれば末尾が異なっていても同じものとしてカウントする)ようなのです。
早速色々と試してみました。

確かに言われている通りの挙動をするようでした。
私の業務の範囲では途中にアルファベットが入るので、この挙動にあたったことがありませんでした。
事前知識なしでぶつかったら混乱しそうです。
この挙動について詳しく説明されている方がいらしたので、リンクを貼らせて頂きます。
【外部リンク】Excel COUNTIF関数の制限|有馬総一郎のブログ

あんまり桁数が多いと同じに見えてしまうんですよ…
それにしても、SUMPRODUCTちゃんは優秀ですね…
COUNTIFちゃん旧イラスト
イラストの更新に伴い、旧イラストをこちらに掲載します!

まとめ
条件に一致するデータの入っているセルの数を数えて返す便利な関数、COUNTIF関数について擬人化キャラを登場させての解説でした。
条件といっても様々で、単なる一致だけではなくワイルドカードを使った部分一致や演算子を使った以上、以下などの条件が設定できて実務では大変役立つ機能を有しています。
条件一致のセルの値の合計を求めるSUMIF関数と組み合わせて、条件に一致する値の合計÷条件に一致する値の件数、すなわち条件に一致するデータの平均値を求めることができます!
少しでもエクセル関数COUNTIF関数の理解の助けになりましたら幸いです。
最後まで読んで頂きありがとうございました!
コメント
[…] エクセル関数擬人化 COUNT関数擬人化記事 […]
[…] […]
[…] COUNTIF関数 擬人化キャラクター解説!エクセル関数の機能や使い方を図やイラストでかんたんに説明します!エクセル業務を行っていて、特定の条件に一致するデータのセルの数を知り […]
[…] […]