要点 —
COUNTIF(範囲, 条件)は範囲の中で1つの条件を満たす セルがいくつあるかを数えます。この関数のすべては、多くの人が見落とす1つの 事実で決まります。条件はテキストの断片——文字列として書かれた小さな テストだ、ということ。これさえ掴めば、あらゆるクセ(引用符の中の演算子、 セルの値を差し込む&、ワイルドカード、日付の罠)が謎でなくなります。
=COUNTIF(A2:A100, "West") ' テキストの完全一致(大文字小文字を区別しない)
=COUNTIF(B2:B100, ">100") ' 演算子は引用符の中に入れる
=COUNTIF(B2:B100, ">"&E1) ' しきい値をセルから——& で連結する
=COUNTIF(A2:A100, "*apple*") ' "apple" を含む——ワイルドカードはテキストで効く
=COUNTIF(A2:A100, "*") ' テキストのセルはいくつあるか
COUNTIF は Excel の主力の一つであり、最も検索される関数の一つです。「このうち いくつが一致する?」は絶えず尋ねる問いだからです。同時に、多くの式が静かに間違う 場所でもあります——ほぼ必ず、条件が COUNTIF の読み方どおりに組み立てられていない せいです。
この記事で学べること
- なぜ条件は文字列なのか、そしてそれが何を説明するか
- 演算子を引用符に入れる、
&でセルの値を差し込む - 「含む/で始まる/で終わる」テキスト件数のためのワイルドカード
- 長い数値での15桁精度の罠(カード番号や ID)
- 条件が1つでは足りないとき——
COUNTIFSへのステップアップ
考え方の軸:条件は式ではなく文字列
たいていの式では、生きた比較を書きます——B2>100 は入力したそばから評価され
ます。COUNTIF では違います。テストの説明をテキストとして手渡すと、COUNTIF が
その説明を範囲内のすべてのセルに適用します。この1つの設計上の選択が、COUNTIF の
挙動のほぼすべてを説明します。
=COUNTIF(B2:B100, ">100") ' 正:テスト全体が文字列
=COUNTIF(B2:B100, >100) ' 誤:>100 は単独では有効な式ではない
「条件は文字列」を体に入れれば、ルールは自然に従います。演算子(>、<、>=、
<>)は値と一緒に引用符の中に置く。裸の数値や語("West"、42)は「これに
等しい」を意味する。そしてしきい値が定数ではなくセルにあるときは、セル参照を
引用符の中に入れることはできず——& で文字列を組み立てる必要があります。
現場で一番多い要求:セルに置いたしきい値
数値をベタ書きすることはほぼありません。しきい値はセルにあります——フィルター ボックス、パラメータ、目標値。これは COUNTIF で最もよくある問いであり、答えは 連結です。
=COUNTIF(B2:B100, ">"&E1) ' E1 が持つ値より大きいものを数える
=COUNTIF(A2:A100, E1) ' E1 の値に完全一致
=COUNTIF(A2:A100, "*"&E1&"*") ' E1 のテキストを含むセル
=COUNTIF(C2:C100, ">="&E1&"") ' E1 の日付でも機能する
仕組みはこうです。">"&E1 は演算子の文字列にセルの値を貼り合わせ、">100" の
ような完成した条件文字列を作ります。もし ">E1" と打ちたくなったら——やめて
ください。それは文字どおり「E1」というテキストを探します。参照は引用符の外に
置き、& でつなぎます。
ワイルドカード:含む・で始まる・で終わる
テキストに対して、COUNTIF はワイルドカードをサポートします。これが「いくつの セルが…を含むか」という問いの道具たるゆえんです。
=COUNTIF(A2:A100, "apple*") ' "apple" で始まる
=COUNTIF(A2:A100, "*apple") ' "apple" で終わる
=COUNTIF(A2:A100, "*apple*") ' どこかに "apple" を含む
=COUNTIF(A2:A100, "?????") ' ちょうど5文字(? = 任意の1文字)
=COUNTIF(A2:A100, "*") ' 任意のテキスト(「テキストのセルを数える」に最適)
=COUNTIF(A2:A100, "<>") ' 空でないセル
知っておくべきことが2つ。テキストの照合は大文字小文字を区別しません——
"apple" は "Apple" も "APPLE" も同じに数えます。大文字小文字を区別して数えたい
なら、SUMPRODUCT と EXACT の組み合わせが要ります。そして文字どおりの
アスタリスクや疑問符に一致させたいときは、チルダでエスケープします——"~*" は
実際の * 文字を見つけます。
罠:日付と長い数値
人が繰り返しはまる失敗モードが2つあります。
日付。 =COUNTIF(A:A, ">2026-01-01") は COUNTIF にテキストの日付を解釈
させることになり、これは地域設定に依存し、気づかぬうちに誤読しかねません。代わり
に本物の日付から条件を組み立てれば、解釈の当て推量が入りません。
=COUNTIF(A2:A100, ">="&DATE(2026,1,1)) ' 堅牢、ロケール非依存
=COUNTIF(A2:A100, ">="&DATE(2026,1,1))-COUNTIF(A2:A100, ">"&DATE(2026,12,31))
長い数値。 COUNTIF は数値を有効15桁の精度でしか比較しません。クレジット
カード番号、16〜18桁の ID、末尾だけが違う長い口座番号は等しいとして扱われる
ため、数が多く出すぎます。対策は、それらをテキストとして保存・照合し、ワイルド
カードを足してテキスト比較を強制すること——=COUNTIF(A2:A100, E1&"*")、あるいは
ID をテキストのまま保持して文字列全体で一致させます。
条件は1つだけ:COUNTIFS に手を伸ばすとき
COUNTIF の決定的な限界は名前そのものにあります。1つの範囲、1つの条件。
「金額 > 100 かつ 地域 = West」が必要になった瞬間、COUNTIF は1回の呼び出しでは
対応できません——そして COUNTIF を積み重ねても and にはならず、or になって
しまいます。
' OR(どちらかの条件):COUNTIF を足す
=COUNTIF(A2:A100,"West") + COUNTIF(A2:A100,"East")
' AND(両方の条件):これは COUNTIF ではなく COUNTIFS
=COUNTIFS(A2:A100,"West", B2:B100,">100")
だから判断ルールは明快です。条件1つ → COUNTIF。すべて成り立つべき条件が
2つ以上 → COUNTIFS。 「かつ」を表そうとして
COUNTIF(...) + COUNTIF(...) を書いている自分に気づいたら、それが COUNTIF を
卒業した合図です。(一致ではなく異なる値を数えたい場合は、
ユニークな値を数えるを参照してください。)
判断のポイント
COUNTIF が何より報いてくれる習慣が1つあります。条件を、自分が組み立てている
文字列として扱うこと。 定数のテストは演算子と一緒に引用符へ。セルベースの
しきい値は引用符の外で & を使って組み立てる。テキストの問いはワイルドカード。
日付の問いは DATE() を使い、地域ごとの解釈に何も委ねない。そして限界を知る——
条件は1つ。COUNTIF は意図的に狭く、その狭さこそが長所です。問いに2つ目の条件が
生えたとき、答えはより賢い COUNTIF ではなく、COUNTIFS です。
ExcelMaster の使いどころ
間違った数を返す COUNTIF がエラーになることはめったにありません——条件が、Excel
の読み方ではなくあなたの読み方で組み立てられていただけです。ExcelMasterは
最初から条件を正しく書きます。セルのしきい値を & で連結し、「含む」の問いには
ワイルドカードを選び、日付範囲には DATE() を使い、2つ目の条件が現れた瞬間に
COUNTIFS へ切り替えます。「E1 の目標を超える注文を数えて」や「返金に触れている
行はいくつ」と伝えれば、あなたの意図どおりに数える式を作り——さらに、合計を
水増しする前に15桁の罠を指摘します。
よくある質問
ExcelでCOUNTIFを使うには?
=COUNTIF(範囲, 条件) は 範囲 の中で1つの条件を満たすセルを数えます。条件は
テキストで書きます——完全一致なら "West"、比較なら ">100"(演算子は引用符の
中)、「apple を含む」なら "*apple*"。セルの値を使うには連結します——
=COUNTIF(B:B, ">"&E1)。
COUNTIFとCOUNTIFSの違いは?
COUNTIF は1つの範囲に1つの条件を扱います。COUNTIFS は複数の範囲にまたがる
複数の条件を扱い、すべての条件が成り立つ行を数えます——たとえば
地域 = West かつ 金額 > 100。COUNTIF を2つ重ねると足し算(or)になるので、
and のロジックには COUNTIFS を使います。
セルの値をCOUNTIFの条件にするには?
演算子の文字列とセル参照を & で連結し、参照は引用符の外に置きます——
=COUNTIF(B:B, ">"&E1) は E1 より大きい値を数えます。">E1" と書くと、代わりに
文字どおりのテキスト「E1」を探してしまいます。
COUNTIFはワイルドカードに対応していますか?
はい、テキストに対して。* は任意の文字数に、? はちょうど1文字に一致します——
"apple*"(で始まる)、"*apple*"(含む)、"?????"(5文字)。テキストのセルを
数えるには "*" を使います。文字どおりの * や ? に一致させるには、チルダで
エスケープします——"~*"。
クレジットカード番号のような長い数値をCOUNTIFが数え間違えるのはなぜ?
COUNTIF は数値を有効15桁の精度で比較するため、後ろの桁だけが違う長い数値は等しい ものとして扱われ、多く数えられます。そうした ID はテキストとして保存し、(必要 ならワイルドカードを添えて)文字列全体で一致させ、テキスト比較を強制します。
検証環境
検証環境: Excel 365 (Windows 11) — 最終確認 2026-07-07。
関連ガイド: ExcelのCOUNTIFS関数 · COUNT・COUNTA・COUNTBLANK · ユニークな値を数える · ExcelのSUMPRODUCT関数
