データーの数を数える、COUNT関数の基本と活用法

Sheet基本

COUNT・COUNTA・COUNTBLANK 完全ガイド
データの件数を正確に把握する

「何件入力されているか」「空白は何件か」を正確に数える。COUNT/COUNTA/COUNTBLANKの違いを理解して、データ品質チェックと入力管理に活用する。

GASとの関係:array.filter() の結果の .length

GASで data.filter(r => r[0] !== "").length と書く処理は COUNTA に対応します。条件付きカウントは filter() で条件を絞ってから length を見る形です。

GASで自動化を学ぶ →
目次

COUNT系関数の基本的な違い

関数カウント対象使用例
COUNT数値のみ(テキスト・空白は除外)売上金額が入力されている行数
COUNTA空白以外すべて(テキスト・数値・日付・エラー値)何らかのデータが入力されている行数
COUNTBLANK空白セルのみ未入力の行数

基本的な使い方

=COUNT(A2:A100) // 数値セルの件数
=COUNTA(A2:A100) // 空白以外の件数(入力済み件数)
=COUNTBLANK(A2:A100) // 空白件数(未入力件数)

// 全件数に対する入力率
=COUNTA(A2:A100)/ROWS(A2:A100) // → 0.85 など(85%)
=TEXT(COUNTA(A2:A100)/ROWS(A2:A100),"0.0%") // → "85.0%"

COUNT vs COUNTA — どちらを使うべきか

// 数値データ(売上額・点数)の件数を数える → COUNT
=COUNT(C2:C100) // 数値のみカウント。"未集計"などテキストは除外

// 名前・コード・テキストを含む行数を数える → COUNTA
=COUNTA(A2:A100) // 文字列も含めてカウント

// 日付の入力件数 → COUNT(日付は数値として扱われるためCOUNTで可)
=COUNT(B2:B100) // 日付セルの件数

実務でよく使うパターン

パターン1:データ入力チェックダッシュボード

// 全行数・入力済み・未入力をまとめて集計
// A列が名前列として
全行数: =ROWS(A2:A100)
入力済み: =COUNTA(A2:A100)
未入力: =COUNTBLANK(A2:A100)
入力率: =TEXT(COUNTA(A2:A100)/ROWS(A2:A100),"0%")

パターン2:最終行の自動検知

// A列のデータが何行目まであるか(データ最終行)
=COUNTA(A:A) // ヘッダーを含む件数

// 実データの行数(ヘッダーを除く)
=COUNTA(A2:A) // A2以降の入力済み件数

パターン3:数値と文字列が混在する列の確認

// A列の全入力件数
全件: =COUNTA(A2:A100)

// うち数値件数(残りが文字列・テキスト)
数値: =COUNT(A2:A100)

// テキストの件数(差分)
テキスト: =COUNTA(A2:A100) - COUNT(A2:A100)

パターン4:ARRAYFORMULAとの組み合わせ

// B列の各行まで(A2:A2, A2:A3, A2:A4...)の累積件数を返す
=ARRAYFORMULA(MMULT(IF(A2:A100<>"",1,0)*ROW(A2:A100)^0, IF(ROW(A2:A100)^0, 1, 0)))

この知識をGASで活かす

GASでシートのデータ件数を確認するとき、sheet.getLastRow() は全行数を返しますが、空白行も含みます。COUNTAの「空白以外を数える」発想でfilter()を使う方が正確な件数を得られます。

Free Newsletter

AIを業務に活かしたいなら
SMR-Labメルマガ

毎週火曜10時、コピペで使えるChatGPTプロンプト・
GASテンプレートをお届け。登録は1分・完全無料。

▶ 無料で登録する

📧 無料メルマガ登録

DX・AI活用のヒントを週1回お届け。登録特典:すぐ使えるプロンプト集&GASテンプレート。

登録情報は第三者に提供しません。いつでも配信停止できます。

目次