複数の列に一致する条件で行数をcountする方法 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”」
2つ目と4つ目の「検索条件」の項目が COUNTIF 関数と書き方が異なります。COUNTIFの場合、条件に一致するセルの数を数えますが、COUNTIFS関数の場合、条件の詳細を指定をすることができます。
一致する条件で求める場合は、今回のように頭にイコール「=」を付ける必要があります。
計算の結果、2が得られます。
COUNTIFS関数の条件変更例
今度はイコール「=」以外の条件でカウントする例を挙げてみましょう。
先ほどの表を拡張して、得点の列を追加しました。
それでは英語の点数が75点以上だった人数を、COOUNTIF関数を使って数えてみましょう。
- [条件範囲1] B列全てを指定「B:B」
- [検索条件1] 英語に一致「”=英語”」
- [条件範囲2] C列全てを指定「C:C」
- [検索条件2] 80以上「”>=75″」
4つ目の[検索条件2]が、イコール「=」ではなく、大なりイコール「>=」となる点がポイントです。全角文字の「≧」ではなく、必ず半角で「>=」と記述しなくてはいけないので気をつけてください。
該当の行数3件が返却されます。
今回の例は2列に対する条件でしたが、3列以上の場合でも更に条件範囲と検索条件を加えることによって求めることが可能になります。