本記事には広告(PR)が含まれます。
くわしくは プライバシーポリシー をご確認ください。
エクセルでデータを集計していると、
「0以外の数だけ数えたい」
「回答が入っているセルだけ数えたい」
といった場面がよくあります。
数値だけが並んでいる範囲で0以外を数えるなら、COUNTIF関数に「<>0」を指定するのが簡単です。
ただし、範囲内に空白や文字が含まれている場合は、目的に応じてCOUNTIFSやCOUNT関数と使い分ける必要があります。
私自身、Excelに慣れていない頃は
「全体のセル数 − 0のセル数」
という式を作っていましたが、条件が複雑になると途中で混乱してしまうことが多くありました。
ところが、COUNTIFに「<>0(0以外)」という条件を入れられることを知ってからは、
一発で集計できるようになってとてもラクになりました。
この記事では、エクセル初心者の方にも分かりやすいように、COUNTIFやCOUNTIFSを使って0以外をカウントする方法を解説します。
空白を除く方法や、0より大きい数だけを数える方法、0以外の数値だけを数える方法も紹介します。
この記事でできること
エクセルで0以外をカウントする基本の考え方
初心者がつまずきやすいポイントが、
「COUNTA?COUNTIF?COUNT?どれを使えばいいの?」
という 関数の使い分け です。
まずは、0以外をカウントしたいときに押さえておきたい基本を整理しておきましょう。
0以外を数えたい場面とは
0以外のカウントは、さまざまな場面で活躍します。
-
売上表で「売れた日だけ数えたい」
-
アンケートの「回答がある項目だけ数えたい」
-
作業記録で「作業が発生した日だけ数えたい」
-
エラーチェックで「異常(0以外)データの件数を調べたい」
Excelの集計では “0” も “空欄” もどちらも出てくるため、
条件付きでセルを数える力 があると仕事がかなりラクになります。

COUNT・COUNTA・COUNTIFの違い
まずは使い分けの基礎から。
| 関数 | 何を数える? | 0の扱い |
|---|---|---|
| COUNT | 数値だけ数える | 0は数える |
| COUNTA | 空欄以外を数える | 0も数える |
| COUNTIF | 条件に一致するセルだけ数える | 条件次第(「<>0」で0を除外) |
数値だけが並んでいる範囲で0以外を数える場合は、COUNTIF関数が便利です。
空白や文字が含まれている場合は、数えたい対象に合わせてCOUNTIFSやCOUNT関数と使い分けましょう。

「<>0」が表す意味と注意点
COUNTIFでは、不等式をそのまま条件にできます。
-
"<0"… 0より小さい -
">0"… 0より大きい -
"<>0"… 0ではない
つまり、0以外を数えたいなら次の式だけでOKです。
=COUNTIF(A1:A10,"<>0")
とてもシンプルですが、初心者の方が気づきにくいポイントでもあります。

ただし、空欄もカウントされてしまう という弱点があります。
空欄以外をカウントするCOUNTA関数
数値や文字など、完全な空白ではないセルの数を調べるには、COUNTA関数が便利です。
コメント欄の入力件数を確認するときなどに利用できます。
ただし、COUNTA関数は、数式によって""が返されているセルもカウントします。見た目が空欄でも、セル内に数式が入っている場合は件数に含まれる点に注意しましょう。

次の章では、より実務的な使い方を紹介していきます。
エクセルで0以外をカウントする方法
ここからは、Excelで「0以外」をカウントするための実践的な方法を紹介します。
どれも覚えておくと使い分けがしやすく、
売上集計・アンケート集計・作業記録など、日常業務でとても役立ちます。
COUNTIFで0以外をカウントする
まずは基本となる方法です。
COUNTIF関数の「<>0」を使えば、一発で求められます。
●使用する数式
この式の意味
-
A1:A10… 集計したい範囲 -
"<>0"… 「0ではないもの」という条件
メリット
-
初心者でも使いやすい
-
条件がシンプルで覚えやすい
-
範囲内で 0以外のセル数がすぐわかる
注意点
COUNTIFの"<>0"という条件では、空白や文字列もカウントされる場合があります。
もし範囲内に「空白・0・文字列・数値」が混ざっていると、想定より件数が多くなることがあります。
空白を除外したい場合は、次に紹介するCOUNTIFS関数を使いましょう。
COUNTIFSで空白と0をカウントしない
空欄(””)と0を両方除外したい場合は、
複数条件を設定できる COUNTIFS 関数 が最適です。
●使用する数式
=COUNTIFS(A1:A10,"<>0",A1:A10,"<>")

この式の意味
-
"<>"… 空欄ではない(=空白以外) -
"<>0"… 0ではない
→ 0でも空欄でもない“実データ”だけカウントできる
例:売上データで「入力済みの日だけ数える」
-
売上0円の日はカウントしない
-
入力忘れ(空欄)の日もカウントしない
-
売上があった日だけ数える
こういった場面では COUNTIFS が圧倒的に便利です。
0より大きい数や1以上の数をカウントする
COUNTIFは「=」「<」「>」「<>」など
不等式がそのまま使える のが最大の武器です。
よく使う条件をまとめると、次のようになります。
0より大きい数だけカウント(正の数)
=COUNTIF(A1:A10,">0")

0以上(0も含む)
=COUNTIF(A1:A10,">=0")

1以上の数だけカウント
=COUNTIF(A1:A10,">=1")

メリット
-
条件を変えるだけで幅広い集計ができる
-
「数字の抽出」「条件付き集計」などの土台になる知識
-
どの関数よりも 直感的に使いやすい
COUNT・COUNTAから0の件数を差し引いて求める
COUNTAの件数から0を差し引く
=COUNTA(A1:A10)-COUNTIF(A1:A10,0)
COUNTAで空欄以外のセルを数え、そこから0のセル数を引きます。

この方法では、数値だけでなく「-」や文字列なども入力済みセルとしてカウントされます。
私はCOUNTIFの比較条件を知らなかった頃、COUNTAの件数から0の件数を差し引いて求めていました。
0以外の数値だけを数える
=COUNT(A1:A10)-COUNTIF(A1:A10,0)
COUNTで数値が入ったセルだけを数え、そこから0のセル数を引きます。

文字列や空欄を除いて、0以外の数値だけを数えたい場合はこちらが適しています。
メリット・デメリット
| 項目 | 内容 |
|---|---|
| メリット | COUNTIFの不等式に慣れていなくても使える |
| デメリット | 条件が増えると式が長くなり、混乱しやすい |
実務では、COUNTIF や COUNTIFS を覚えたほうが確実でわかりやすいです。
条件付き書式やフィルターで0以外を確認する
●条件付き書式で「0以外のセルを色付け」
データが0以上の数値だけの場合は、「指定の値より大きい」に0を設定すると、0以外のセルを強調できます。

マイナスの数値も含めて0以外を色付けしたい場合は、数式を使った条件付き書式で「0と等しくない」という条件を設定します。
条件式の設定例:
=A1<>0
0以外の値を抽出する
数値一覧から0を除いたデータだけを確認したい場合は、フィルターも便利です。
フィルターの一覧で「0」のチェックを外すと、0以外のデータだけを表示できます。
フィルターを使えば、チェックを外すだけで0以外のデータだけを簡単に表示できます。Excelで0以外をカウントするときのよくある質問
エクセルで0でないセルの数を数えるには?
数値だけが入力されている範囲なら、COUNTIF関数に「0ではない」という条件を指定します。
=COUNTIF(A1:A10,"<>0")
ただし、範囲内に空白や文字が含まれている場合は、それらも結果に影響することがあります。空白と0を除きたい場合は、次のCOUNTIFS関数を使いましょう。
=COUNTIFS(A1:A10,"<>0",A1:A10,"<>")
空白と0をカウントしない方法は?
空白と0の両方を除外するには、COUNTIFS関数で2つの条件を指定します。
=COUNTIFS(A1:A10,"<>0",A1:A10,"<>")
「0ではない」「空白ではない」という2つの条件を満たしたセルだけがカウントされます。
0以外の数値だけをカウントするには?
文字列や空白を除き、0以外の数値だけを数える場合は、COUNTで数値の件数を求めてから0の件数を引きます。
=COUNT(A1:A10)-COUNTIF(A1:A10,0)
0より大きい数をカウントするには?
0を含めず、正の数だけを数える場合は次の式を使います。
=COUNTIF(A1:A10,">0")
0も含めたい場合は、条件を”>=0″に変更します。COUNTIFでは、指定した数値より大きい・小さい値を条件として数えることができます。
0以外の値を抽出するには?
通常のフィルターを使い、0のチェックを外すと、0以外のデータだけを表示できます。
Microsoft 365やExcel 2021以降では、FILTER関数を使う方法もあります。
=FILTER(A2:A10,A2:A10<>0,"該当なし")
数式で空白に見えるセルも除外できますか?
数式によって""が返されているセルは、見た目は空欄でも、完全な未入力セルではありません。
COUNTA関数では件数に含まれるため、結果が想定と合わないときは、対象範囲に数式やスペースが含まれていないか確認しましょう。
Excel関数を毎回検索している方へ
COUNTIFのような関数は、条件の書き方を少し知るだけでも使える場面が大きく広がります。
ただ、必要になるたびに関数を検索していると、なかなか覚えられず、似た式で迷ってしまうこともあります。
Excelを基礎から無理なく身につけたい方は、独学を続けるコツや勉強の順番をまとめた記事も参考にしてみてください。
まとめ
エクセルで0以外のセルを数える基本の式は、次のとおりです。
=COUNTIF(A1:A10,"<>0")
ただし、対象範囲に空白や文字が含まれている場合は、想定した件数にならないことがあります。
空白と0を除きたい場合はCOUNTIFS関数、文字列や空欄を除いて0以外の数値だけを数えたい場合は、COUNT関数とCOUNTIF関数の組み合わせが便利です。
数えたい対象に合わせて関数を使い分けると、売上表や作業記録、アンケートなどの集計を効率よく進められます。
まずは今回紹介した式を、ご自身の表に合わせて活用してみてくださいね。
【関連記事】
- Excelで月ごとに集計する方法|SUMIFS関数・ピボットテーブルを解説
- エクセルで別シートと重複チェック!条件付き書式で色をつける方法を解説【初心者向け】
- エクセルで特定の文字を消すには?初心者向けに置換・関数・マクロを解説
- Excelで100円未満・1000円未満を切り捨てにする方法|関数・書式設定・VBAで一括対応
※外部リンク※
- Microsoft Excel で COUNTIF 関数を使用する |Microsoft サポート
- COUNTIFS 関数 |Microsoft サポート
- ある数値より大きい、または小さい数値の個数を求める |Microsoft サポート
※参考書籍 (PR)※
※本ボックスにはアフィリエイトリンク(PR)が含まれます。
くわしくは プライバシーポリシー へ。
