ExcelのCOUNTA関数の使い方|空白でないセルを数える方法

スポンサーリンク

「この列、データが入っているセルって何個あるんだろう?」と思ったことはありませんか。名前や回答が入力済みかどうかを手で数えるのは手間ですし、データが増えると見落としも出てきますよね。

そんなときに使えるのがCOUNTA関数です。セル範囲を指定するだけで、何かしら値が入っているセルの個数をすぐに返してくれます。

この記事では、COUNTA関数の基本から実務での活用パターン、よくあるトラブルの対処法までまとめて解説します。

この記事は次のような人におすすめ

  • データが入力されたセルの個数をすばやく数えたい
  • COUNTA関数とCOUNT関数の違いがよくわからない
  • 入力漏れのチェックや進捗管理を効率化したい

COUNTA関数とは?

COUNTA関数は、指定した範囲内で空白でないセルの個数を返す関数です。読み方は「カウントエー」で、COUNT(数える)+ A(All=すべて)が由来です。

たとえば、アンケートの回答欄があるとします。COUNTA関数を使えば「何人分の回答が入力されているか」を一発で確認できます。

ポイントは値の種類を問わずカウントするという点です。数値はもちろん、文字列・日付・論理値・エラー値など、セルに何かしら入っていれば対象になります。空白セルだけがカウントから除外されます。

NOTE

COUNTA関数はExcel 2007以降のすべてのバージョンで使用できます。Googleスプレッドシートでも同じ書式で利用可能です。

COUNTA関数の書き方(構文と引数)

基本構文

=COUNTA(値1, [値2], ...)

引数の説明

引数必須/省略可説明
値1必須空白でないセルを数えたいセル範囲や値
値2, …省略可追加のセル範囲や値(最大255個まで)

引数にはセル範囲(A1:A10)、個別のセル(A1, B3)、文字列や数値を直接指定することもできます。

COUNTA関数がカウントする値・しない値

データの種類カウント対象
数値(整数・小数)対象
文字列(”abc”など)対象
日付・時刻対象
論理値(TRUE/FALSE)対象
エラー値(#N/A等)対象
数式の結果が空文字列(””)対象外
空白セル対象外
スペースのみ入力対象(空白ではない扱い)

COUNT関数が数値だけを数えるのに対し、COUNTA関数は種類を問わず「何か入っているかどうか」で判定します。

COUNTA関数の基本的な使い方

ここではアンケートの回答表を使って基本的な動作を確認します。

セル範囲をまとめて数える

B列にアンケートの回答が入っている場合を考えます。

=COUNTA(B2:B10)

B2からB10の中で、何かしら入力されているセルの個数を返します。未回答で空白のままのセルはカウントされません。

複数の範囲を同時に数える

離れた範囲をまとめてカウントしたいときは、カンマで区切ります。

=COUNTA(B2:B10, D2:D10)

B列とD列、2つの範囲で値が入っているセルの合計個数が返ります。

個別のセルを指定して数える

特定のセルだけを確認することもできます。

=COUNTA(A1, B1, C1)

3つのセルのうち空白でないセルの個数を返します。

COUNTA関数の実務活用パターン

入力漏れチェック ── 未入力のセルを見つける

顧客リストの入力状況を確認するケースです。名前やメールアドレスの入力欄に何人分のデータが入っているかを把握します。

=COUNTA(B2:B100)

B列(名前欄)に値があるセルだけがカウントされます。全体の行数と比較すれば未入力がわかります。未入力のセル数を直接知りたい場合は次のように書きます。

=ROWS(B2:B100) - COUNTA(B2:B100)

ROWS関数で全行数を出し、COUNTA関数の結果を引くだけです。COUNTBLANK関数でも同じ結果が得られます。

進捗管理 ── タスクの完了数を数える

プロジェクト管理表で「ステータス」列に入力がある行数を数えれば、完了タスク数がわかります。

=COUNTA(C2:C50)

「完了」「対応中」「保留」など、どんな文字列でもカウントされるのがCOUNTA関数の強みです。ステータスが空白のままの行はまだ未着手、と判断できます。

IF関数と組み合わせれば自動判定も可能です。

=IF(COUNTA(C2:C50)=ROWS(C2:C50), "全タスク完了", "未完了あり")

出欠確認 ── 回答済みの人数を数える

出欠表の回答欄にCOUNTA関数を使えば、回答済みの人数がすぐにわかります。

=COUNTA(D2:D30)

「出席」「欠席」「未定」など、回答の内容に関係なくカウントされます。まだ回答していない人(空白セル)は除外されるので、未回答者の人数も把握できます。

データ件数の把握 ── 表の行数を動的に取得

一覧表のデータ件数を把握したいときにも便利です。名前列にCOUNTA関数を設定しておけば、データを追加するたびに自動で件数が更新されます。

=COUNTA(A2:A1000)

A列に名前が入っている行数がそのままデータ件数になります。見出し行(A1)を除いた範囲を指定するのがポイントです。

よくあるエラーと対処法

COUNTA関数自体がエラーを返すケースはほとんどありません。ただし「結果が期待と違う」というトラブルはよく起こります。

症状原因対処法
カウントが多すぎるスペースだけ入力されたセルがあるTRIM関数で前後のスペースを除去する
カウントが多すぎる削除したはずのセルに数式が残っているDeleteキーでセル内容を完全に削除する
カウントが少ない数式の結果が空文字列(””)のセル=IF(A1="","",A1) の式を見直す
想定より多くカウントされる範囲外のセルまで含めている引数のセル範囲を見直す

スペースが入ったセルに注意

COUNTA関数はスペースだけが入力されたセルも「空白ではない」と判定します。見た目は空白に見えるのにカウントされる場合は、対象セルにスペースが入っている可能性があります。

確認方法は簡単です。セルを選択して数式バーを見てみてください。カーソルが表示されたりスペースが見えたりしたら、Deleteキーで内容を消去しましょう。広い範囲を一括で対応したい場合は、TRIM関数を使うと便利です。

数式が空文字列を返すセル

=IF(A1=1, "OK", "") のような数式が入ったセルを考えます。条件を満たさないときは空文字列(””)が返りますよね。このセルはCOUNTA関数ではカウントされません。数式は入っていても、結果が空文字列なら対象外です。

逆にカウントしたい場合は、空文字列の代わりに別の値(例: “-“)を返すように数式を変更してください。

似た関数との違い・使い分け

COUNT関数ファミリーには用途の異なる関数がいくつかあります。下の比較表で整理しておきましょう。

関数名カウント対象条件指定主な用途
COUNT関数数値セルなし数値の入力数を数える
COUNTA関数空白でないセルなし何かしら入力があるセルを数える
COUNTBLANK関数空白セルなし未入力セルを数える
COUNTIF関数条件に合うセル1つ「出席」など条件付きで数える
COUNTIFS関数条件に合うセル複数「A組かつ出席」など複数条件で数える

COUNTAとCOUNTの使い分け

もっとも混同しやすいのがこの2つです。

  • COUNTA: 空白でないセルをすべて数える(文字列・数値・論理値すべて含む)
  • COUNT: 数値が入ったセルだけを数える

「名前が入力された行数=データ件数」を知りたいならCOUNTA。「点数が入力された行数」を知りたいならCOUNTです。

COUNTAとCOUNTBLANKの関係

COUNTAとCOUNTBLANK関数は表裏の関係です。

=COUNTA(A1:A10) + COUNTBLANK(A1:A10)

この式は常にセルの総数(この例では10)になります。片方の結果がわかれば、もう片方も計算できるということですね。

条件付きで数えたいときは

「入力があるかどうか」ではなく「特定の値かどうか」で数えたいときはCOUNTIF関数を使います。

=COUNTIF(C2:C30, "出席")

「出席」と入力されたセルだけを数えられます。複数の条件を組み合わせたい場合はCOUNTIFS関数の出番です。

まとめ

COUNTA関数は「空白でないセルの個数を数える」シンプルな関数です。

  • 構文: =COUNTA(値1, [値2], ...)
  • 数値・文字列・日付・論理値など値の種類を問わずカウント
  • 空白セルと数式が空文字列を返すセルは対象外
  • 入力漏れチェック・進捗管理・データ件数の把握に活用できる
  • 数値だけ数えたいときはCOUNT関数、条件付きで数えたいときはCOUNTIF関数を使う

まずはシンプルな範囲指定から試してみてください。入力状況をさっと確認できるだけでも、日常の集計作業がぐっとラクになりますよ。

Excel関数一覧

関数の一覧は以下の記事からどうぞ。

エラー値についてのまとめ記事

エラーの種類と対処方法をまとめています。

タイトルとURLをコピーしました