COUNTIF関数 ~ 指定した条件と一致するセルの個数を返す ~

本操作編で、知っておくべき基本的な関数についてはひと通り学習しました。この応用操作編では、ある意味、知らなければ損をする関数の使い方をご紹介したいと思います。

本項で学習する関数は、

COUNTIF関数(カウントイフ)

になります。

といっても、COUNTIF関数は、基本操作編 いろいろな関数 で学習していますし、応用操作編でも、重複したセルやデータを含むレコードを抽出する条件付き書式 で登場しています。

COUNTIF関数は単純でわかりやすいため、他の関数の代用として使うことでき、使い方によっては利用頻度が高い関数になります。すでに基本的な使い方はマスターできていると思いますが、まずは簡単におさらいしておきましょう。

COUNTIF関数は、標題のとおり「指定した条件と一致するセルの個数を返す」関数です。例えば、Excelの任意の範囲の中に「A」という文字列が何個あるのか知りたい場合に使います。

勤務表を例に、実際に活用できる勤務表を作成してみましょう。

まず、以下のように、日付に対してどのような勤務なのか入力する表の枠組みを作成します。

勤務表の入力フォーマットのイメージ

次に、入力規則 で学習したドロップダウンリスト機能を使って、勤務種別「日勤」「夜勤」「公休」のリストメニューを作成します。

ドロップダウンリストのイメージ

これで、それぞれの勤務を入力すると、以下のように表が埋まります。

勤務表に入力したイメージ

では、横(個人)と縦(日付)でそれぞれの勤務の集計を出してみましょう。

まず、横(個人)の集計です。下図のようにCOUNTIF関数の引数を入力すると、「赤木しげる」の範囲内の「日勤」の個数を返します。つまり、一週間の「日勤」の数をカウントできます。

「関数の引数」画面のイメージ

ここでは「3」が算出されました。「赤木しげる」の日勤数は3日です。数式はオートフィルで複写して、簡単に全員の日数を求めることができます。

オートフィルで数式を複写したイメージ

同じ要領で「夜勤」と「休み」の個数も算出しましょう。また、縦(日付)の集計も同様に算出しましょう。

オートフィルで数式を複写したイメージ

すべての勤務の集計ができました。こうして数値化してみると、日ごとに人数が足りているか、ある人の勤務数が多すぎないかなどが簡単に把握でき、調整することができます。

ただし、数式の複写に際しては、基本操作編 絶対参照と相対参照 で学習したとおり参照セルがずれてしまう場合があります。複合参照で複写するなど、参照先の範囲には注意しましょう。

COUNTIF関数はこのように簡単に使えるので、様々な用途で利用できます。

では、本項ではもう少し応用的な使い方を知っておきましょう。

COUNTIFS関数(カウントイフス)

通常のCOUNTIF関数は、条件(上の場合では「日勤」など)が1つだけしか指定できませんでしたが、COUNTIFS関数は複数の条件を指定することができます。

複数の条件を指定するのはどようなケースが考えられるでしょうか。

先述の表を少し改編して、以下のような顧客名簿があったとします。

顧客名簿の表のイメージ

例えば、エリアが「東京」で「女」の人の割合を出したい場合や、「男」で「貸付金額が5万円以上」の人を抽出したい場合などが複数条件に該当するケースになります。

では、エリアが「東京」で「女」の人を抽出してみましょう。

COUNTIFS関数を選択すると、まず「条件1」を指定する画面が表示されます。

「関数の引数」画面のイメージ

どちらから指定してもかまいませんが、まずは「性別」の「女」を抽出します。ここでは性別の「C列」を範囲として「女」を検索条件に指定します。

「関数の引数」画面のイメージ

すると、結果の「3」が返されると同時に、自動的に「条件2」の項目が表示されます。今度はこちらにエリアの「D列」を範囲として「東京」を検索条件に指定します。

「関数の引数」画面のイメージ

自動的に「条件3」が表示されますが、これ以上指定しないのでこのまま「OK」ボタンをクリックします。結果の「1」が表示されていますが、この複数条件に該当するのは1人で「葛城ミサト」のみとなります。

通常のCOUNTIFで算出すると「東京」の人は全員で6人となります。割合としては「17%」ということになります。

では次に、「男」で「貸付金額が5万円以上」の人を抽出してみましょう。

ほぼ同じやり方になりますが、ここで「5万円以上」という検索条件の指定方法が問題となります。

こうした「以上」や「以下」、「未満」などを指定するのは不等号を使います。

不等号一覧表
記号 解説
>= 以上の数。
その数を含む。(例:5>=であれば5を含む)
<= 以下の数。
その数を含む。(例:5<=であれば5を含む)
> より大きい数。
その数を含まない。(例:5>であれば5を含まない)
< より小さい数。
その数を含まない。(例:5<であれば5を含まない)
<> ではない数。
その数を含まない。(例:<>5であれば5ではない数の個数)

これらを踏まえて引数をすべて入力すると以下のようになります。

「関数の引数」画面のイメージ

すると、結果「8」が算出されます。不等号を変えることによって当然結果は変わってきます。以上から「>」に変更すると結果は「7」となります。不等号を使用する場合は注意しましょう。

更新履歴

2020年9月14日
ページを公開。

参考文献・ウェブサイト

当ページの作成にあたり、以下の文献およびウェブサイトを参考にさせていただきました。

文献
なし
サイト
なし