【Excel】複数の列に一致する条件で行カウントする方法 COUNTIFS を使った AND 検索
ある列に対し、条件が一致するセルの数を数える関数は次の通りです。
COUNTIF(条件範囲, 検索条件)
[条件範囲] に指定された範囲内で、[検索条件] に一致するセルの数が抽出されます。しかしこの COUNTIF 関数は条件を1つしか指定ができません。
では複数条件に一致する行数を取得するにはどうしたら良いのか?
複数列に一致する行数を取得する関数
複数条件に一致する行数を数えるには COUNTIFS() 関数を利用します。前述の COUNTIF 関数を拡張した、複数条件が指定出来る関数です。COUNTIF の複数形で COUNTIFS です。
関数の書式は次の通り。
COUNTIFS(条件範囲 1, 検索条件 1, [条件範囲 2, 検索条件 2]……)
これら複数の条件は、全て【AND 条件】です。
COUNTIFS 関数の利用例【一致の場合】
以下の表をご覧ください。
ここで数学の成績が B の人数を、COOUNTIF 関数で数えてみます。
COUITIF との違いは、単に条件が複数設定出来るだけではなく、検索条件も拡張しているところがポイント。引数を次のように設定します。
引数 | 内容 | 設定値 |
---|---|---|
条件範囲1 | B列全てを指定 | B:B |
検索条件1 | 数学に一致 | “=数学” |
条件範囲2 | C列全てを指定 | C:C |
検索条件2 | Bに一致 | “=B” |
「検索条件」の項目が COUNTIF 関数と書き方が異なります。COUNTIF の場合、条件に一致するセルの数を数えますが、COUNTIFS 関数の場合、条件の詳細を指定しなくてはいけません。
一致する条件で求める場合は、今回のように頭にイコール「=」を付けます。
計算の結果、2が得られます。
COUNTIFS関数の利用例【不等号を利用する場合】
今度はイコール「=」以外の条件でカウントする例を挙げてみます。
先ほどの表を拡張して、得点の列を追加しました。
それでは英語の点数が60点以上だった人数を、COOUNTIF 関数を使って数えます。
引数 | 内容 | 設定値 |
---|---|---|
条件範囲1 | B列全てを指定 | B:B |
検索条件1 | 英語に一致 | “=英語” |
条件範囲2 | C列全てを指定 | C:C |
検索条件2 | 60以上 | “>=60” |
4つ目の [検索条件2] が、イコール「=」ではなく、大なりイコール「>=」になる点がポイント。
全角文字の「≧」ではなく、必ず半角で「>=」と記述しなくてはいけません。
該当の行数3件が返却されます。
ここでは2列に対する複数条件を例に挙げました。なお3列以上を条件にする場合も、同じように条件範囲と検索条件を加えることで求められます。