関数 EXCEL&VBA

エクセルの COUNTIF で複数条件を満たすデータをカウントする方法

エクセルで "カウントイフ" と言えば、条件に合致するセルをカウントする COUNTIF関数

では、この条件が複数 (and)、~以上~以下、または (or) といった「複数条件」の場合はどう処理すればいいでしょうか?
(例:男性 かつ 25歳以上かつ35歳未満)

今回は「複数条件」を満たすデータをカウントする方法について、COUNTIF関数COUNTIFS関数 を使って解説します。

コレ、マーケティングには必須のテクニックです。



カウントイフ( COUNTIF )で複数条件の集計はできるの?

できます。
ただ、複数条件といっても AND なのか OR なのかで方法は違ってきます。

AND条件でデータをカウントする場合と、OR条件でデータをカウントする場合、それぞれに解説していきます。

AND条件のカウントイフ

複数条件「かつ」でカウント

複数条件「かつ(=AND)」を処理するという点で言うと、メジャーな COUNTIF関数 は条件をひとつしか指定できません。

複数条件を満たすデータの数を集計するためには COUNTIFS関数 を使います。

COUNTIFS関数

COUNTIFS関数 とは、特定の(複数)条件に一致するセルの個数を返す関数で、書式は;

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

のように表されます。

サンプルとして下のような表を用意しました。

上で例として挙げた「男性 かつ 25歳以上 かつ 35歳未満」の場合、条件は3つなので [検索範囲] と [条件] をそれぞれ3つ設定します。

セルE6に入る数式は;

=COUNTIFS (B2:B11, E3, C2:C11, ">="&F3, C2:C11, "<"&G3)

となります。

▲3つの条件を満たすデータがカウントされた


複数条件「以上」「未満」の設定方法

「25歳以上、35歳未満」のような「以上」「未満」といった条件の設定方法を補足します。

COUNTIF関数COUNTIFS関数 で扱う場合は、不等号や等号をダブルクォーテーション(")で挟みます

上のセルE6の数式でいうと;

=COUNTIFS (B2:B11, E3, C2:C11, ">="&F3, C2:C11, "<"&G3)

赤字部分がそれに相当します。

不等号の右には、不等号と条件が入ったセル位置とを「&」でつなぐ のを忘れないように。

OR条件でデータをカウントする

複数条件「または」でカウント

複数条件「または(=OR)」を処理する場合は、元祖 COUNTIF関数 を使います。

今度は、下のような表をサンプルとして用意しました。


顧客の都道府県情報が「東京都」または「神奈川県」のデータをカウントします。

セルD5に入る数式の正解は2種類あります。
まずひとつめは;

=COUNTIF (B2:B11, D2) + COUNTIF (B2:B11, E2)

この数式は、単純に COUNTIF関数の2種類の答えを足し算したものです。

条件が少なければこの数式でいいです。
しかし、条件が増えれば増えるほど数式が長くなってしまうのが短所です。

そこで、もう一つの正解がこちら;

=SUM (COUNTIF (B2:B11, "東京都", "神奈川県" } ))

こちらは「配列数式」を使用した数式です。
(赤字の {} で囲まれた部分)

こうすることで数式を短く効率的にすることができます。


お気づきの方もいると思いますが、配列数式を使った方法は「東京都」「神奈川県」の条件を数式に直接入力しているため、セルD2およびE2の値を全く使っていません。

以上で、『エクセルのカウントイフ複数条件を満たすデータをカウントする方法』は終了です。

他の関連記事とあわせて仕事や趣味に役立ててください。

関連記事・広告






-関数, EXCEL&VBA
-, , ,