shikumika’s diary

日々の事務作業で手間なことを簡単にできる仕組み(自動化、方法など)、困ったことの解決方法を調べた備忘録

【Excel】COUNTIF関数で条件付きカウント!文字列のみ・空白以外・空白のみ等

Excelでデータを集計する際の「条件付きカウント」の事例です。COUNTIF関数で文字列のみ、空白以外、空白のみのカウントや、SUMPRODUCT関数とISNUMBER関数を用いて数値のみをカウントする事例です。

内容:

なお、確認のExcelは「Microsoft® Excel® for Microsoft 365 MSO」(バージョン2506)です。

目的別の数式例

セルA3からA12 に値がある表での数式例は次のとおりです。

目的 数式 説明
文字列だけをカウント =COUNTIF(A3:A12,"*") 任意の文字列が入っているセル。数値を除く。
空白でないセルをカウント =COUNTIF(A3:A12,"<>") 何かしらの値があるセル
空白セルをカウント =COUNTIF(A3:A12,"=") 空欄のセル
0以上の数値をカウント =COUNTIF(A3:A12,">=0") 正の数とゼロ
文字列以外のセルをカウント =COUNTIF(A3:A12,"<>*") 数値や日付など(やや不正確)
空白でなく文字列でないセル =COUNTIFS(A3:A12,"<>*",A3:A12,"<>") 数値・日付など
数値のみを正確にカウント =SUMPRODUCT(--ISNUMBER(A3:A12)) 数値(整数・小数・日付)

 

なお、画面イメージは次のとおりです。

Countif関数を活用した計算例

条件付きカウント(文字列のみ・空白以外・空白のみ等)

数式の説明

1. =COUNTIF(A3:A12,"*")

意味:文字列が入っているセルの数をカウント

* はワイルドカードで「任意の文字列」を意味します。

数値や空白はカウントされません。

例:名前や商品名など、文字が入力されているセルを数えるときに便利。

shikumika.org

2. =COUNTIF(A3:A12,"<>")

意味:空白でないセルの数をカウント

<> は「空白でない」という意味。

文字列・数値・日付など、何かしらの値が入っていればカウントされます。

3. =COUNTIF(A3:A12,"=")

意味:空白セルの数をカウント

"=" は「空白と等しい」、つまり空白セルを対象にします。

データが未入力のセルを確認したいときに便利。

4. =COUNTIF(A3:A12,">=0")

意味:0以上の数値が入っているセルの数をカウント

数値のみが対象。文字列や空白は除外されます。

0も含まれる点に注意。

5. =COUNTIF(A3:A12,"<>*")

意味:文字列でないセルの数をカウント(ただしやや不正確)

"<>*" は「任意の文字列ではない」という意味。

ただし、Excelではこの条件が完全に文字列以外を判定するわけではないため、曖昧な結果になることがあります。

6. =COUNTIFS(A3:A12,"<>*",A3:A12,"<>")

意味:空白でなく、かつ文字列でないセルの数をカウント

2つの条件をANDで組み合わせたもの。

実質的には「数値や日付が入っているセル」をカウントするのに近い動作。

7. =SUMPRODUCT(--ISNUMBER(A3:A12))

意味:数値が入っているセルの数をカウント(最も正確)

ISNUMBER は「数値かどうか」を判定。

-- は TRUE/FALSE を 1/0 に変換するためのテクニック。

SUMPRODUCT で合計を求めることで、数値セルの件数を取得。

 

以上、Excelでデータを集計する際の「条件付きカウント」の事例でした。