Countifsで複数回答を数えるときの注意点

午後1:

・Excel「関数(Countif、Countifs)、グラフの挿入」

 

午後2:

・エクスプローラーの操作「ファイルの検索、ファイル名の変更」

・相談「前回送ったメールが届いていないらしい」

→添付したファイルはスキャンしたPDFファイル。

 送信先のアドレスは携帯電話のものなので、PDFファイルが閲覧できない可能性あり。

 PDFの画像部分をスクリーンショットし、画像ファイルとして添付し再送。

 

午後3:

・Excel「セルの書式設定(配置、罫線、塗りつぶし)、編集機能」

 

午後4:

・Word「ファイル機能、範囲選択(キーボード)、文字書式、段落書式」

 

 

 

Excelの関数の中でも使用頻度の高い「CountifとCountifs」。

 

単純に数値の数を数える「Count」関数の上位にあたるもので、

なんであろうが数える「Count」と違い、条件を指定して数えることができます。

Countif関数は数える「範囲」と「条件」だけ指定してやります。
Countif関数は数える「範囲」と「条件」だけ指定してやります。

上の例で行くと、E2には「C列」(範囲)から「E1」(条件)を数えるという式が入っています。

その結果、C列から「テレビ」だけを数えた結果「45」という答えが返ってきます。

 

 

 

また、複数回答可の場合はどうでしょうか?

複数回答ありのパターンでも範囲が隣接していれば問題なし。
複数回答ありのパターンでも範囲が隣接していれば問題なし。

その場合でも、範囲を(C列からE列)と指定してやれば問題なく数えてくれます。

 

 

 

ところが今回、年代も考慮した場合に問題が起きました。

複数の条件を数える場合は「Countifs」関数を使います。

B列から「10代」を、C~E列から「テレビ」を数えるはずが…
B列から「10代」を、C~E列から「テレビ」を数えるはずが…

ところが、このように引数を正しく指定しても、「VARUE」エラーが返ってきます。

これは、Countifs関数は範囲の引数で複数列・複数行が指定できないことが原因です。

 

対処法としては各範囲の条件を数えたものを足してやれば解決します。

式が長くなりますが、変わるのは範囲のみ。コピーして該当箇所だけ変えましょう。
式が長くなりますが、変わるのは範囲のみ。コピーして該当箇所だけ変えましょう。

日本語で書くと「B列が10代で、C~E列がテレビ」を数えなさいではなく、

「B列が10代で、C列がテレビ」と「B列が10代で、D列がテレビ」と「B列が10代で、E列がテレビ」を足しなさい、と書く必要がある、ということですね。

 

 

 

Countifなら複数範囲を数えられるので、Countifsでも数えられそうなものですけどね。