解説
空に見えるセルも数える?GoogleスプレッドシートのCOUNT・COUNTA・COUNTBLANK
数値の0、文字、未入力、空文字の数式は同じ扱いではない。架空の6セルで三つのカウント関数を比べ、合計が一致しない理由を確認しよう。

回答欄を何件埋めたか数えたいのに、COUNTとCOUNTAで結果が違う。空に見えるセルまで数えられることもある。まず「数値の個数」「値のあるセル」「空白とみなすセル」の、どれを知りたいか分けよう。
このページでは、Googleスプレッドシートの通常のセル範囲でCOUNT・COUNTA・COUNTBLANKを比べる。練習するなら、編集できる新しいシートを用意しよう。顧客名や本番の集計表は使わず、架空の6セルだけで試すよ。
三つの関数は、数える対象が違う
| 関数 | 今回確認する対象 |
|---|---|
| COUNT | 範囲内にある数値 |
| COUNTA | 文字や長さゼロの文字列、空白文字も含む値 |
| COUNTBLANK | 内容のないセルと、空文字列を含むセル |
COUNTは単に「入力したセル全部」を数える関数ではない。0は数値なので数える一方、今回の「メモ」という文字は数えない。COUNTAも「見える文字があるセルだけ」を数える意味ではないよ。
ここでは普通のスプレッドシートの範囲を扱う。公式ヘルプに併記されているBigQuery向けの説明と混ぜず、A2:A7のようなセル範囲の構文を見よう。
六つの状態を用意してみよう
新しいシートで、次のように入力する。A5は、本当に何も入力しないまま残すよ。空白の代わりに「空欄」という文字を書かないでね。
| セル | 入れる内容 | 中にあるもの |
|---|---|---|
| A2 | 10 | 数値 |
| A3 | 0 | 数値のゼロ |
| A4 | メモ | 文字 |
| A5 | 入力しない | 内容のないセル |
| A6 | ="" | 長さゼロの文字列を返す数式 |
| A7 | =" " | 半角スペース1個を返す数式 |
A6とA7は数式として入力する。先頭にアポストロフィを付けたり、セルをプレーンテキストの書式にして数式の文字そのものを表示したりしないようにしよう。A7の二つの引用符の間には、半角スペースが1個ある。
結果は2・5・2になる
別の空いているセルへ、一つずつ数式を入力しよう。
=COUNT(A2:A7)
=COUNTA(A2:A7)
=COUNTBLANK(A2:A7)
期待する結果は、それぞれ2、5、2。
- COUNTの2件は、A2の10とA3の0。
- COUNTAの5件は、A2・A3・A4・A6・A7。未入力のA5を除いて数える。
- COUNTBLANKの2件は、未入力のA5と、空文字列を返すA6。
Googleの公式資料は、COUNTAが長さゼロの文字列や空白文字も数えること、COUNTBLANKが空文字列を含むセルを空白とみなすことを説明している。A6は両方に数えられるため、COUNTAとCOUNTBLANKを足せば必ず範囲のセル数になる、とはいえないんだ。
今回も5+2=7で、範囲の6セルより多くなる。故障ではなく、二つの関数の対象が重なるためだよ。
0を空欄扱いにしない
0は値が0である数値。未回答や未入力とは意味が違うので、「見た目が目立たないから除く」と決めつけないようにしよう。
回答件数や提出済み件数を数える場合は、関数を選ぶ前に、何を提出済みと判断するか決める必要がある。数式で自動表示した空文字列や、スペースだけの入力を含めるかどうかも、先に確認したいね。
特定の条件に合う件数や、同じ人をまとめた件数が必要なら、今回の三つの関数だけで目的を満たすとは限らない。入力の有無、条件への一致、重複を除いた件数は別の問いだよ。
期待どおりにならないとき
最初に、範囲がA2:A7になっているか確認する。次にA3が数値の0、A6が空文字列の数式、A7がスペース1個の数式として扱われているか、数式バーを見よう。
一度A5へ試しに文字を入れた場合は、そのセルの内容を削除して未入力へ戻す。文字を白くしたり、スペースへ置き換えたりしても、内容をなくしたことにはならない。練習が終わったら練習用シートを残すか削除するかを選べるよ。
編集部では公式資料の条件を、6セルの種類ごとに独立した確認プログラムで照合した。Googleの実アカウント上で入力操作を行った記録ではないので、手元でも2・5・2の結果と内訳を確かめよう。

みんなのコメント 0
感想や、試してみたことを聞かせてね。コメント・返信は承認後に公開されます。
最初のコメントをどうぞ。