【COUNTA関数】数式による空白はカウントしない方法!

エクセルとGoogleスプレッドシートで、データが入力されているセルの個数を数える方法をご紹介します。COUNTA関数の基本的な使い方から、数式は含めずにカウントする方法まで解説しているので、ぜひ参考にしてみてください。

スポンサーリンク

COUNTA関数の基本

【COUNTA関数】空白以外をカウント!数式を除く

COUNTA関数は、指定した「範囲」から、空白以外のセルの個数を返します。

例:=COUNTA(A2:A5)

【重要】カウントに含まれるセル

  • 文字や数値(通常のテキストや数字)
  • スペース(見た目上は空白でも半角スペースや全角スペースが入力されているセル)
  • 数式の結果の空白(""
    • セルに数式(例:=IFERROR(a/1,""))が入力されており、その結果が空白 ("") であっても、COUNTA関数はその数式を値として見なし、カウントに含まれます。

COUNTA関数の引数:(範囲1, [範囲2, …])

スポンサーリンク

COUNTA関数で数式をカウントしない方法

COUNTIF関数と組み合わせる

【COUNTA関数】空白以外をカウント!数式を除く

以下のように、「空白以外の個数(数式も含む)」から、「数式の結果の空文字」を引き算します。

例:=COUNTA(A2:A5)-COUNTIF(A2:A5,"<!")

【ポイント】

  • "<!"は、空文字(""スペースのセルのみカウントします。
  • 「数式の空文字」と「半角・全角スペース」を完全に除外できます。

COUNTIF関数の引数:(範囲, 条件)

SUMPRODUCT関数を使う

【COUNTA関数】空白以外をカウント!数式を除く

以下のように、SUMPRODUCT関数を使って、「空白ではない」セルの個数を合計します。

例:=SUMPRODUCT((A2:A5<>"")*1)

【数式の解説】

  • A2:A5<>""の判定式が、各セルが空白かどうかを判定し、その結果を{FALSE; FALSE; TRUE;TRUE}のような配列で返します。
  • *1がこの配列を{0; 0; 1; 1}という数値の配列に変換し、SUMPRODUCT関数がこの配列を合計を返してます。

【ポイント】

  • 「数式の空文字」を除外しますが、「半角・全角スペース」はカウントに含まれます。

SUMPRODUCT関数の引数:(配列1, [配列2], …)


SUMPRODUCT関数の基本的な解説は「SUMPRODUCT関数の使い方|複数条件で合計する!」の記事をご覧ください。

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