関数 EXCEL&VBA

エクセルでカウント|COUNTIF で「を含む」データをカウントする

エクセルではカウント系の関数は人気です。

たとえば、お客様アンケートの集計業務。
「キーワード」を含む コメントを カウント して顧客の要望・傾向を分析します。
『接客』という キーワードを含むコメントの件数をカウントする など。

こんな時に便利なのが COUNTIF関数(カウントイフ関数) です。
(他に方法がないわけではありませんが)

しかし、COUNTIF関数で「○○を含む」件数をカウントする には、ちょっとした工夫が必要なのです。

そこで今回の h1r0-style.net では、エクセルで COUNTIF関数 を使い「任意のキーワードを含む」データをカウントする方法を解説します。



エクセルでキーワードを含むデータをカウントする

今回、サンプルとして使用するのは下のようなアンケート一覧表です。


▲D列をつかってキーワードをカウントできるようにします

B列のコメント一覧から COUNTIF関数 を使って『接客』というキーワードを含むデータ件数をカウントします。

COUNTIF関数

COUNTIF関数とは

COUNTIF関数とは、指定されたセル範囲のうち、検索条件に一致するデータの個数をカウントする便利な関数で;

= COUNTIF( 範囲, 検索条件

こんな感じで表されます。

「範囲」とは検索する範囲のこと。
つまり、今回の例ではアンケートコメントが入力されているセル範囲です。

「検索条件」とは検索したいキーワードのこと。
今回の例では、セルD2に入る『接客』というキーワードになります。


▲つまりこういうこと

件数をカウントさせる セルD5に素直に数式を当てはめると;

= COUNTIF( B2:B11, D2

となるのですが、このままではセルの値が『接客』と完全一致の場合しかカウントせず、今回のような「『接客』を含む」には対応しません。


▲失敗例 数式が不十分で検索できていない

あいまい検索

完全一致ではなく「含む」「始まる」「終わる」という検索を「あいまい検索」と言ったり「キーワード検索」と言ったりします。

こんな時に便利なのが「ワイルドカード」です。
「ワイルドカード」を使って「○○を含む」という、あいまい検索を可能にします。


ワイルドカードを使う

ワイルドカードとは

ワイルドカードとは、検索の際に指定するパターンに使用する特殊文字の種類で、どんな対象文字、ないし文字列にもマッチするもののことである。
カードゲームのワイルドカードに由来する呼称。
出典:ウィキペディア

Pointワイルドカードには、任意の文字列の代用の「*」と任意の1文字の代用「」とがあります。

*:0文字以上の任意の文字列を表します。(何文字でもよい
例)*田:田で終わる文字列 / 田*:田で始まる文字列 / **:田を含む文字列

:任意の一文字を表します。
例)田:田で終わる2文字 / ??田:田で終わる3文字 / :田が真ん中に入る3文字

 

ワイルドカードを使った COUNTIF関数

では、セルD5に入力した数式にワイルドカードを使い「セルD2の値(接客)を含むセル」をカウントしてみましょう。

数式は、ワイルドカードが入るとこうなります;

= COUNTIF( B2:B11, "*" & D2 & "*"

重要なのは赤字で記した「"*"&」や「&"*"」です。
これによって、「セルD2の値(接客)の 前後の文字はなんでもよい」となります。

すると検索が正しく機能し、セルD5には「3」という数字が返ってきました。


▲コメントの No.2とNo.5、No.10 が「接客」を含んでいる

参考までに、数式の中に直接「接客」を固定で入れ込む場合は;

= COUNTIF( B2:B11, "*接客*"

と表記することができます。

以上で『COUNTIF で「〇〇を含む」データをカウントする』の解説は終了です。
ぜひ仕事に活用してみてください。

関連記事・広告






-関数, EXCEL&VBA
-, , ,