Excelで特定のデータの個数を数えたい場合、関数を活用できます。数値だけを数えたいのか、文字も含めたいのか、条件付きなのか、重複は除外したいのかによって使うべき関数は変わります。
本記事では、特定のデータの個数集計に使われる代表的な関数と使い方を7つ紹介します。
目次
- 【COUNT関数】数値だけを数える
- COUNT関数の基本構文
- COUNT関数の使い方
- 【COUNTA関数】空白以外を数える
- COUNTA関数の基本構文
- COUNTA関数の使い方
- 【COUNTBLANK関数】空白を数える
- COUNTBLANK関数の基本構文
- COUNTBLANK関数の使い方
- 【COUNTIF関数】特定のデータの個数を数える
- COUNTIF関数の基本構文
- COUNTIF関数の使い方
- 【COUNTIFS関数】複数の条件下でデータの個数を数える
- COUNTIFS関数の基本構文
- COUNTIFS関数の使い方
- 【UNIQUE / COUNTUNIQUE関数】重複箇所を除外して数える
- UNIQUE / COUNTUNIQUE関数の基本構文
- UNIQUE / COUNTUNIQUE関数の使い方
- 【SUBTOTAL / AGGREGATE関数】非表示行を除外して数える
- SUBTOTAL / AGGREGATE関数の基本構文
- SUBTOTAL / AGGREGATE関数の使い方
- まとめ
- よくある質問
【COUNT関数】数値だけを数える
COUNT関数とは、ExcelやGoogleスプレッドシートで数値が入力されているセルの個数だけを数える関数です。
指定した範囲のなかから金額や数量、点数などの数値データのみを集計し、文字列や空白セルは自動的に除外します。数値データの件数を正確に把握したい場面で使われる基本的な関数です。
COUNT関数の基本構文
COUNT関数の基本構文は「=COUNT(範囲)」です。COUNT関数の場合、引数(関数に対して「何を数えるか」を指定する部分)には数えたいセル範囲を指定します。
A1からA10までの数値を数えたいなら、「=COUNT(A1:A10)」と入力します。
COUNT関数の使い方
実務でCOUNT関数が役立つのは、「0」「80」などの数値と「未入力」「欠席」などの文字列が混在するデータを集計する場面です。
たとえばテストの点数表で、実際に受験して点数が付いた人数だけを把握したい場合、COUNT関数であれば0点や80点といった数値は数えつつ、欠席や空白セルは自動的に除外できます。
ただし、CSVなどから取り込んだデータが文字列として保存されている場合は、見た目が数値であってもカウントされません。その際は、数値に変換する処理を行いましょう。
【COUNTA関数】空白以外を数える
ExcelやGoogleスプレッドシートで、数値だけでなく文字列も含めて特定のデータの個数を数えたい場合に使えるのが、空白以外のセルをすべて数えるCOUNTA関数です。
ここでは、COUNTA関数の基本構文と使い方を解説します。
COUNTA関数の基本構文
COUNTA関数の基本構文は「=COUNTA範囲)」とシンプルです。
完全に空白のセルだけが除外されます。入力漏れのチェックや、データ件数を把握したい場合に便利ですが、エラー値もカウントされる点には注意が必要です。
COUNTA関数の使い方
COUNTA関数は、顧客名簿や商品一覧など、文字列を含むデータの件数を把握したい場面で力を発揮します。数値のみを対象とするCOUNT関数と異なり、名前やステータスなどが入力されたセルも正確に算出可能です。
たとえば、社員名簿で見出しを除いた人数を知りたい場合、「=COUNTA(A:A)−1」と入力すると算出できます。
ただし、IF関数などで作られた空文字は、見た目が空白でもカウント対象になります。表示上の入力セルだけを数えたい場合は、条件付き関数の併用が必要です。
【COUNTBLANK関数】空白を数える
ExcelやGoogleスプレッドシートで特定のデータの個数を数える際、空白のセル数を把握したい場合に使うのがCOUNTBLANK関数です。
ここでは、COUNTBLANK関数の基本構文と使い方を解説します。
COUNTBLANK関数の基本構文
COUNTBLANK関数の基本構文は、「=COUNTBLANK(範囲)」です。
ただし、セルにスペースが入力されていると空白として扱われません。見た目は空欄でもカウントされない場合は、余分なスペースが原因であることが多いため、事前のデータ整理が重要です。
COUNTBLANK関数の使い方
COUNTBLANK関数は、提出物の管理やタスク進捗の把握など「まだ完了していないもの」を数えたい場面で役立ちます。
たとえば、完了日を入力する列に対して「=COUNTBLANK(D2:D50)」と指定すると、未完了の件数をすぐに確認できます。目視による確認よりも正確で、抜け漏れ防止に効果的です。
【COUNTIF関数】特定のデータの個数を数える
ExcelやGoogleスプレッドシートで、条件に合うデータだけを抽出して特定のデータの個数を数えたい場合に欠かせないのがCOUNTIF関数です。
ここでは、COUNTIF関数の基本構文と使い方を解説します。
COUNTIF関数の基本構文
COUNTIF関数の基本構文は、「=COUNTIF(範囲, 検索条件)」です。
数値を条件にする場合はそのまま記述できますが、文字列を指定する場合は必ずダブルクォーテーションで囲う必要があります。
たとえば「東京」を条件にする場合は、"東京"と入力しなければ正しく集計されません。このルールを理解していないと、結果が0になる原因になります。
COUNTIF関数の使い方
COUNTIF関数は、完全一致だけでなく、条件付きで特定のデータの個数を数えたい場面で活躍します。
売上が一定金額以上のデータや、名前に特定の文字を含む人を数えたい場合には、比較演算子(「>=」「<=」「>」「<」など)やワイルドカード(「*」や「?」など)を使います。
不等号を使う条件は必ずダブルクォーテーションで囲み、セル参照と組み合わせる場合は「&」で結合してください。
【COUNTIFS関数】複数の条件下でデータの個数を数える
複数の条件を同時に満たすデータの個数を数えたい場面で活躍するのが、COUNTIFS関数です。
ここでは、COUNTIFS関数の基本構文と使い方を解説します。
COUNTIFS関数の基本構文
COUNTIFS関数の基本構文は「=COUNTIFS(範囲1, 条件1, 範囲2, 条件2, …)」で、範囲と条件をセットで指定します。
たとえば、「A列が東京」かつ「B列が完了」の件数を数える場合に有効です。
注意点として、指定するすべての範囲は行数を揃える必要があります。範囲の大きさが一致しないとエラーになるため、条件指定時は統一しましょう。
COUNTIFS関数の使い方
COUNTIFS関数は、期間を指定して特定のデータの個数を数えたい場合にとくに効果を発揮します。
たとえば「4月の売上件数」を集計するには、「4月1日以上」かつ「4月30日以下」という2つの条件を設定する必要があります。同じ日付列を対象に、開始日と終了日の条件をそれぞれ指定することで、期間内のデータだけを正確に抽出可能です。
【UNIQUE / COUNTUNIQUE関数】重複箇所を除外して数える
UNIQUE / COUNTUNIQUE関数は、重複箇所を除外して数えるときに活用できる関数です。
Googleスプレッドシート・Excelのどちらを使うかによって、基本構文が異なるため注意しましょう。
UNIQUE / COUNTUNIQUE関数の基本構文
COUNTUNIQUE関数の基本構文は、Googleスプレッドシートの場合は「=COUNTUNIQUE(範囲)」です。
一方、ExcelではCOUNTUNIQUE関数が使えないため、UNIQUE関数「=UNIQUE(範囲)」とCOUNTA関数「=COUNTA(範囲)」を組み合わせて対応します。
UNIQUE / COUNTUNIQUE関数の使い方
COUNTUNIQUE関数は、マーケティングや営業レポートで「延べ件数」と「ユニーク件数」を正確に区別したい場面で活用できます。
たとえば売上データが100行あっても、同一顧客による複数回購入であれば、実際の購入者数はひとりです。
COUNTA関数ではこうした違いを判別できませんが、COUNTUNIQUE関数を用いたりUNIQUE関数とCOUNTA関数を組み合わせたりすれば、重複を除いた純粋な人数を正確に把握できます。
【SUBTOTAL / AGGREGATE関数】非表示行を除外して数える
オートフィルターを使ってデータを絞り込むと、COUNTA関数では非表示行まで含めて数えてしまい、画面上の件数と一致しないことがあります。この問題を解決するのが、SUBTOTAL / AGGREGATE関数です。
ここでは、SUBTOTAL / AGGREGATE関数の基本構文と使い方を解説します。
SUBTOTAL / AGGREGATE関数の基本構文
基本構文は「=SUBTOTAL(集計方法, 範囲)」で、「103」を指定すると非表示行を除外してカウントできます。
さらに、AGGREGATE関数を使うと、非表示行に加えてエラー値も無視した集計が可能です。
SUBTOTAL / AGGREGATE関数の使い方
SUBTOTAL / AGGREGATE関数はデータリストの最上部に配置することで、フィルター条件を変更するたびに、現在表示されている件数が自動で更新されます。ステータスバーを目視で確認する方法と違い、数値がシート上に残るため、報告用の証跡としても有効です。
とくにAGGREGATE関数を使うと、VLOOKUPなどのエラー値を無視した集計が可能になります。
さらに、テーブル機能を使って構造化参照で範囲指定すると、データが増減しても自動対応できる安定した集計表を作成できます。
まとめ
ExcelやGoogleスプレッドシートで特定のデータの個数を数えるには、目的に応じて関数を使い分けることが重要です。
数値のみを数えるならCOUNT、入力済みセル全体ならCOUNTA、空白を把握したい場合はCOUNTBLANKが適しています。条件付きで集計する場合はCOUNTIF、複数条件ならCOUNTIFSを使うことで柔軟な集計が可能です。
また、重複を除いた実数を知りたい場合は、UNIQUEやCOUNTUNIQUEを活用してください。
集計結果のズレやミスを防ぐために、「何を数えたいのか」を明確にして最適な関数を使いましょう。
よくある質問
特定のデータの個数を数える場合に使用する関数はどれですか?
特定のデータの個数を数える際に、汎用性が高いのはCOUNTIFS関数です。単一条件・複数条件のどちらにも対応でき、後から条件が増えても修正しやすいのが特徴です。
数値のみならCOUNT、入力済みセル全体ならCOUNTA、条件付きならCOUNTIF、複数条件ならCOUNTIFSを活用しましょう。重複を除きたい場合は、ExcelではUNIQUEとCOUNTA、スプレッドシートではCOUNTUNIQUEを使います。
ピボットテーブルでデータの個数をカウントするにはどうすればいいですか?
関数を使わずに特定のデータの個数を数えたい場合は、ピボットテーブルが有効です。
データ範囲を選択し、「挿入」からピボットテーブルを作成したら、数えたい項目を「値」エリアに配置するだけで文字データが自動的に件数として集計されます。
Excelでは、作成時に「このデータをデータモデルに追加する」にチェックを入れることで、「一意の値の個数」を選択でき、重複を除いたユニーク数も算出可能です。
