※購入先、ダウンロードへのリンクにはアフィリエイトタグが含まれており、それらの購入や会員の成約、ダウンロードなどからの収益化を行う場合があります。

COUNTIFで複数条件を数える完全ガイド|COUNTIFSのANDとOR、0件の原因まで整理

「COUNTIFで複数条件を数えたいのに、式がうまく作れない」「COUNTIFSを使えばいいとは聞くけれど、ANDとORの使い分けで止まってしまう」――そんな状態で集計作業が止まっていないでしょうか。
複数条件の件数集計は、部署×ステータス、点数の範囲、日付の期間指定など、実務で避けて通れない一方で、範囲のズレや条件指定の書き方ひとつで結果が0件になったり、二重カウントが発生したりします。

本記事では、「countif 複数条件」で検索する方が最短で正しい集計にたどり着けるように、複数条件の基本となるCOUNTIFSの型(AND条件)から、OR条件を安全に作る方法、上下限や日付条件のつまずきポイント、そして0件になる原因を切り分けるチェックリストまで、例を交えて丁寧に解説します。読み終えたときには、どのパターンでも迷わず式を組み立てられ、数字に自信を持って提出できる状態を目指します。

※本コンテンツは「記事制作ポリシー」に基づき、正確かつ信頼性の高い情報提供を心がけております。万が一、内容に誤りや誤解を招く表現がございましたら、お手数ですが「お問い合わせ」よりご一報ください。速やかに確認・修正いたします。

COUNTIFで複数条件で迷うポイントを最初に整理する

COUNTIFで件数を数える作業は、名簿管理や在庫管理、案件一覧の集計など、日々の業務で頻繁に発生します。ただ、集計したい条件が1つだけとは限りません。むしろ現場では「部署が営業で、かつステータスが受注」「担当者が田中で、かつ期限が今月」「金額が10万円以上で、かつ地域が関東」のように、複数条件で絞り込みたい場面のほうが一般的です。

そこで多くの方が検索するのが「countif 複数条件」ですが、結論から言えば、複数条件を扱う基本はCOUNTIFではなくCOUNTIFSです。とはいえ、検索時点では「COUNTIFの延長で何とかできないか」「COUNTIFSって何が違うのか」「OR条件はどうするのか」「日付条件が思った通りに動かない」など、迷いがいくつも重なっている状態になりやすいです。最初に迷いポイントを整理すると、以降の式がスムーズに作れるようになります。

countifとcountifsの使い分け

まずは役割の違いを明確にします。

  • COUNTIF:条件は基本的に1つ。指定範囲の中から、その条件に合うセルの数を数えます。

  • COUNTIFS:条件を複数指定できます。条件範囲と条件をペアで増やし、「すべての条件に当てはまるもの(AND)」を数えます。

ここで重要なのは「COUNTIFでも複数条件っぽいことができる」と誤解しないことです。COUNTIF自体は単一条件が前提なので、複数条件を扱うときは考え方として「COUNTIFSに移行する」のが基本になります。

ただし例外が1つあります。それがOR条件です。OR条件(AまたはB)を数えたいとき、COUNTIFSでスマートに書ける場合もありますが、現場ではCOUNTIFを足し算して作るほうが分かりやすいケースが多いです。つまり使い分けは次のイメージが現実的です。

  • AND条件:COUNTIFSを使う

  • OR条件:COUNTIFを足す、またはCOUNTIFSを足す(複合OR)

この大枠を押さえておくと、「何を使えばいいか分からない」状態から抜け出しやすくなります。

AND条件とOR条件の違い

複数条件の混乱の多くは、ANDとORが頭の中で混ざってしまうことから起きます。式を作る前に、まず集計したい条件を言葉で書き出し、「かつ」「または」をハッキリさせるのが最短です。

  • AND条件(かつ)

    • 例:部署が「営業」かつステータスが「受注」

    • 例:点数が「60以上」かつ「80未満」

    • 例:地域が「関東」かつ金額が「10万円以上」
      → すべて満たすものだけを数えます。

  • OR条件(または)

    • 例:部署が「営業」または「企画」

    • 例:ステータスが「受注」または「商談」

    • 例:商品が「A」または「B」
      → どれか1つでも満たせば数えます。

ポイントは、COUNTIFSが得意なのはANDであることです。ORは後で紹介する「足し算」や「二重カウント回避」を理解して初めて安全に扱えます。

ExcelとGoogleスプレッドシートで共通の注意点

ExcelとGoogleスプレッドシートは別製品ですが、COUNTIFSの使い方で多くの人がつまずくポイントは共通しています。特に重要なのが次の2点です。

  1. 条件範囲のサイズを揃える
    たとえば条件範囲1がA2:A100、条件範囲2がB2:B200のように行数がズレていると、正しく集計できません。列全体参照(A:A、B:B)で統一するか、行数を揃えた範囲指定を徹底するのが基本です。

  2. データの型(数値・日付・文字列)を意識する
    「見た目は数値」「見た目は日付」でも、実際は文字列として入っていると比較条件が効きません。日付条件が効かない、数値の大小比較ができない、というトラブルはここが原因であることが非常に多いです。

さらに運用上は、共同編集やコピペで列が増減し、範囲指定だけが取り残されることも起こります。式が壊れたときは、条件範囲のズレと型の崩れを最初に疑うのが近道です。


COUNTIFで複数条件の基本はcountifsでAND条件を作る

複数条件で件数を数える場合の基本は、COUNTIFSでAND条件を組むことです。ここをしっかり理解しておけば、たとえ「countif 複数条件」と検索していても、実務上は迷いが激減します。

countifsの構文と範囲サイズ一致のルール

COUNTIFSは「範囲と条件」をペアで指定します。構文は次の形です。

=COUNTIFS(条件範囲1, 条件1, 条件範囲2, 条件2, …)

このとき、条件範囲1と条件範囲2は同じ行数・列数でなければなりません。たとえばA2:A100に対してB2:B100のように揃える、あるいはA:AとB:Bのように列全体で揃える、という運用が安全です。どちらが良いかはデータ量と運用で決まります。

  • データ行数が少ない・増減がある:列全体参照が楽(ズレにくい)

  • データが非常に多い:実データ範囲に絞ったほうが計算が軽い

また、COUNTIFSは条件を増やすほど式が長くなりますが、考え方は単純です。「範囲→条件」を繰り返すだけなので、まずは2条件の型を完璧にし、その後で増やしていくのが安全です。

別列で複数条件を指定する例

まずは最も分かりやすい例です。次のような表を想定します。

  • A列:部署

  • B列:ステータス

  • C列:担当者

  • D列:金額

例1:部署が「営業」かつステータスが「受注」の件数
=COUNTIFS(A:A,"営業",B:B,"受注")

この式の意味は「A列が営業である行を候補にし、その中でB列が受注の行だけを数える」です。COUNTIFSは条件を順番に絞り込むイメージを持つと理解しやすくなります。

例2:部署が「営業」かつステータスが「受注」かつ担当者が「田中」
=COUNTIFS(A:A,"営業",B:B,"受注",C:C,"田中")

条件が増えても、書き方は変わりません。範囲と条件のペアを追加するだけです。

例3:部署が「営業」かつ金額が「100000以上」
=COUNTIFS(A:A,"営業",D:D,">=100000")

数値条件は「>=」や「<=」などの演算子を文字列として書く点がポイントです。この書き方に慣れると、集計の幅が一気に広がります。

同じ列に上下限を指定する例

次によくあるのが「同じ列に対して2つの条件を付ける」ケースです。たとえば点数の列があり、「60以上80未満」を数える場合です。

  • D列:点数

=COUNTIFS(D:D,">=60",D:D,"<80")

ここで重要なのは、同じ範囲D:Dを2回指定していることです。これは「条件範囲と条件が1セット」だからで、上下限を付けたいならセットを2つ作る必要があります。

この型は点数だけでなく、金額、日付、在庫数、作業時間など、あらゆる「範囲条件」に応用できます。

さらにセル参照で可変にしたい場合は次の形が便利です。

  • G1:下限

  • H1:上限

=COUNTIFS(D:D,">="&G1,D:D,"<"&H1)

演算子は文字列、値はセル参照で連結します。この型は覚えておくと非常に強力です。


COUNTIFで複数条件をORで数える3つの型

OR条件は「countif 複数条件」で検索した人が特につまずきやすいポイントです。COUNTIFSがAND条件の設計であるため、OR条件は別の考え方で組み立てます。ここでは現場で頻出する3つの型に分け、迷いどころと注意点まで含めて整理します。

単純ORはcountifを足す

まず最も単純なORです。「AまたはB」を数えたい場合、COUNTIFを足し算する方法が分かりやすく、ミスも少なくなります。

例:E列の商品が「A」または「B」の件数
=COUNTIF(E:E,"A")+COUNTIF(E:E,"B")

考え方は「Aの件数」と「Bの件数」を別々に数え、合計するだけです。条件を増やす場合も同様です。

例:AまたはBまたはC
=COUNTIF(E:E,"A")+COUNTIF(E:E,"B")+COUNTIF(E:E,"C")

ただし注意点があります。AとBが同時に成立する可能性がある条件では二重カウントになります。商品名のように1セルに1つしか入らないなら問題になりませんが、「タグ」「複数選択が入る文字列」「状態が重複し得る判定」などでは要注意です。

countifsを足して複合ORを作る

次に多いのが「条件の組み合わせをORにしたい」パターンです。たとえば次のような集計です。

  • (部署が営業 かつ ステータスが受注)
    または

  • (部署が企画 かつ ステータスが商談)

この場合、COUNTIFSを2本作って足し算します。

=COUNTIFS(A:A,"営業",B:B,"受注") + COUNTIFS(A:A,"企画",B:B,"商談")

この型のメリットは、条件の組が明確になり、読み返したときに意図が分かりやすいことです。特に複数部署・複数ステータスの集計では、この形がもっとも現場向きです。

さらに「(営業かつ受注)または(営業かつ商談)」のように、部署は同じでステータスだけが異なる場合も同様です。

=COUNTIFS(A:A,"営業",B:B,"受注") + COUNTIFS(A:A,"営業",B:B,"商談")

つまり、ORを作りたいときは「ORで並べたい条件のまとまりごとにCOUNTIFSを作る」と覚えると整理しやすくなります。

二重カウントを避ける考え方

OR条件で最も怖いのは、二重カウントに気付かず誤った数字を提出してしまうことです。対策としては大きく2つの方向性があります。

  1. そもそも重ならない条件で設計する
    ステータスが「受注」と「商談」のように同時成立しないなら、COUNTIFSを足しても二重カウントしません。最初に「同じ行が複数条件に入る可能性があるか」を確認しておくと安心です。

  2. 重なる部分を引く
    もし重なり得る場合は、重複部分を数えて差し引きます。集合の考え方でいうと「AまたはB」は「A + B – (AかつB)」です。

例:A条件とB条件が重なる可能性がある場合
=COUNTIF(範囲,A) + COUNTIF(範囲,B) - COUNTIFS(範囲,A,範囲,B)
ただしこの例は単一範囲で成立しにくいので、実務では「重複する条件」を別列で判定しておく、タグを正規化して別表にする、など設計から見直すケースもあります。

要するに、OR条件は「足せば終わり」と思わず、重複の可能性を検討することが大切です。ここを丁寧にやると、集計作業の信頼性が一段上がります。


COUNTIFで複数条件でよく使う条件指定のコツ

COUNTIFSやCOUNTIFは、関数名を知っているだけでは安定しません。条件指定の書き方を誤ると、0件になったり、想定より少なかったり、多かったりします。ここでは特に頻出の「数値」「文字列」「日付」について、ミスが起きやすいポイントと合わせて整理します。

数値条件と演算子の書き方

数値比較で重要なのは、演算子を文字列として書くことです。

  • ">=100000"

  • "<80"

  • "<>0"(0以外)

さらに、条件値をセルで管理したい場合は連結します。

  • G1が100000の場合
    =COUNTIFS(D:D,">="&G1)

複数条件なら次のようになります。

  • 金額がG1以上で、かつI1未満
    =COUNTIFS(D:D,">="&G1,D:D,"<"&I1)

ここでよくあるミスは次の通りです。

  • ">=G1"のようにセル参照を文字列として書いてしまう

  • ">="&"100000"のように不要に二重に文字列化してしまう

  • 演算子のダブルクォートを閉じ忘れる

式がうまくいかないときは、まず「演算子の部分」「連結の部分」を目視で確認すると原因が見つかりやすいです。

文字列条件とワイルドカード

文字列条件は一見簡単ですが、部分一致をしたいときにワイルドカードの扱いで差が出ます。

  • 含む:"*東京*"

  • で始まる:"東京*"

  • で終わる:"*支店"

たとえば「支店名に“東京”を含むもの」を数えるなら次の形です。

=COUNTIF(F:F,"*東京*")

複数条件なら次のように組み合わせます。

  • 部署が営業で、かつ支店名に東京を含む
    =COUNTIFS(A:A,"営業",F:F,"*東京*")

文字列で特に多いトラブルが「余分なスペース」です。見た目は同じ「営業」でも、末尾に半角スペースが入っていると一致しません。データが外部から来る場合(CSV、システム出力、コピー&ペースト)ほど起きやすいので、疑うクセを付けると安定します。

日付条件でつまずかないための前提

日付条件は、COUNTIFSの中でも特につまずきやすい分野です。理由は、日付が「見た目」と「内部データ」が一致していないことがあるからです。たとえば「2025/12/01」と見えていても、実際には文字列として入っていると、大小比較ができません。

安全な運用は次の2点です。

  1. 日付は日付として入力する(文字列にしない)

  2. 条件日付もセルに入れて参照する

たとえば「締切日(G列)が2025/12/01以上」の件数を数えたいなら、

  • K1に2025/12/01を日付として入力
    =COUNTIFS(G:G,">="&K1)

このようにすると、式の可読性も上がり、日付の書式ミスも減ります。日付を直接文字列で書くと、環境差や書式差で意図しない結果になりやすいため、セル参照を基本にすると堅牢です。


COUNTIFで複数条件が0件になる原因チェックリスト

「式は合っているように見えるのに0件」「明らかに一致するデータがあるのに数えない」というときは、原因がある程度パターン化されています。焦って式を作り直す前に、次のチェックリストで切り分けると復旧が早くなります。

範囲のサイズ不一致

COUNTIFSで最優先で疑うべき原因です。

  • 条件範囲1と条件範囲2の行数が揃っていない

  • 片方だけヘッダー行を含んでいる

  • 片方だけ列全体参照、もう片方は途中までの範囲

  • フィルタや並べ替え後に参照範囲がズレた

  • 途中で列を挿入した結果、参照先がずれた

対策としては、どちらかに統一します。

  • 列全体参照で揃える(A:A、B:B)

  • 実データ範囲で揃える(A2:A5000、B2:B5000)

特に共同編集では、行が増えるたびに範囲を伸ばす運用だとズレが起きやすいので、列全体参照を基本にするのは合理的です。一方でデータ量が多いなら範囲指定のほうが計算負荷を抑えられます。ここは運用に合わせて選びます。

数値が文字列になっている

数値条件で0件になる場合、最も多い原因の1つです。

  • 数値列が左寄せ(Excelの一般的な表示)

  • 先頭にアポストロフィが入っている

  • CSV取り込みで文字列扱いになった

  • 全角数字が混ざっている

たとえば「100以上」を数えたいのに、データが文字列だと大小比較が成立せず、期待した件数が出ません。見分け方としては、該当セルを選択して数式バーや表示形式を確認する、あるいは単純に=ISNUMBER(セル)で判定するのも有効です。

空白や余分なスペースが混ざっている

文字列一致で「あるはずなのに一致しない」は、スペース混入が原因のことが多いです。

  • 末尾に半角スペースが入っている

  • 先頭にスペースが入っている

  • 全角スペースが混ざっている

  • 改行コードが混ざっている

対処としては、TRIM(前後空白除去)やCLEAN(制御文字除去)相当の処理を使う、あるいは元データ側で整形してから集計するのが安全です。まずは一致しないセルをコピーして、別セルで=LEN(セル)を見て長さが違わないか確認するだけでも、原因が特定できることがあります。

条件の引用符と連結ミス

式の書き方そのもののミスも定番です。

  • ">="&G1 のつもりが ">="G1 になっている

  • ダブルクォートが片方だけ

  • 条件をカンマ区切りで並べる順序が崩れている

  • 条件範囲と条件がズレて対応している(範囲の次が条件、のペアが崩れる)

COUNTIFSはペア構造なので、どこかで崩れると全体が壊れます。復旧のコツは、いきなり長い式を直そうとせず、次の順番で縮小して確認することです。

  1. 条件を1つに減らして動くか

  2. 条件を2つにして動くか

  3. 追加した条件で壊れるなら、その条件の型・データを疑う

このやり方を取ると、原因を最短で特定できます。


よくある質問

条件をセル参照で可変にしたい

条件をセル参照にすると、式をいじらずに集計条件だけ変えられます。実務ではこの形が最も扱いやすいです。

例:部署条件をM1、ステータス条件をN1に入力して可変にする
=COUNTIFS(A:A,M1,B:B,N1)

数値条件の場合は演算子との連結が必要です。

例:金額がG1以上
=COUNTIFS(D:D,">="&G1)

上下限なら次のように組みます。

例:金額がG1以上かつH1未満
=COUNTIFS(D:D,">="&G1,D:D,"<"&H1)

可変にしたい条件は「セル参照」、演算子が必要な条件は「文字列+連結」と覚えると迷いません。

3つ以上の条件でも使える?

使えます。COUNTIFSは条件範囲と条件のペアを増やすだけなので、3つでも4つでも同じ考え方です。

例:部署がM1、ステータスがN1、担当者がO1
=COUNTIFS(A:A,M1,B:B,N1,C:C,O1)

注意点として、条件が増えるほど「どこが原因で数が合わないか」の切り分けが難しくなるため、先ほどのチェック(条件を減らして原因を特定する)を習慣にすると運用が安定します。

列全体参照はしてよい?

列全体参照は、範囲ズレが起きにくいという点で非常に便利です。特にデータが増減する運用では、列全体参照のほうが保守が簡単です。

一方で、データが数万行〜数十万行規模になると、列全体参照は計算が重くなることがあります。その場合は、実データの範囲に絞るのが現実的です。たとえばA2:A50000のように、増える見込みの最大行までをあらかじめ確保しておくと、「ズレにくさ」と「軽さ」のバランスが取りやすくなります。

Excelとスプレッドシートで結果が違うときは?

同じCOUNTIFSでも、結果が違うときは次の可能性を疑います。

  • データ型が違う(Excelでは日付、スプレッドシートでは文字列になっている等)

  • 空白や不可視文字の扱いが違う

  • 参照範囲がズレている(片方だけ途中まで、など)

  • インポート時の変換ルールが異なる(CSVの解釈差など)

まずは「条件範囲のサイズ一致」「データ型」「空白混入」を順に確認します。特に日付と数値は、見た目では判断しづらいので、別列で判定用の関数(ISNUMBERなど)を使って切り分けると早く原因に辿り着けます。


まとめ

「countif 複数条件」と検索して辿り着く悩みの多くは、COUNTIFSを正しく使えるようになることで解消できます。最初に押さえるべき要点は次の通りです。

  • 複数条件の基本はCOUNTIFSでAND条件を組む

  • 同じ列の上下限は、同じ範囲を繰り返して条件を2つ書く

  • OR条件は、COUNTIFまたはCOUNTIFSを足し算して作る

  • ORは二重カウントの可能性があるので、条件が重なるかどうかを事前に確認する

  • 0件や誤集計の原因は「範囲ズレ」「型の崩れ」「空白混入」「連結ミス」に集中している

集計は、正しい式を作ることだけでなく、後から見直したときに意図が分かる形にしておくことも重要です。条件をセル参照にして可変にする、OR条件は式を分解して足し算する、チェックリストで誤集計を潰す、といった工夫を入れると、締切前でも安心して数字を出せるようになります。