※本ページにはプロモーション(広告)が含まれています
【2026年最新版】ExcelのCOUNTIFSでOR条件を複数組み合わせる方法完全ガイド
「COUNTIFS関数でOR条件を指定したいのに、うまくカウントできない」と悩んでいませんか?ExcelのCOUNTIFS関数は複数の条件を同時に満たすセルを数える便利な関数ですが、「どれか一つの条件を満たすセルを数える」OR条件には直接対応していません。
本記事では、COUNTIFS関数でOR条件を実現する4つの方法を、具体的な数式例とともに徹底解説します。ビジネスの現場でよく使う売上集計・人事データ分析など実践的な応用例も紹介するので、今日から即使えるExcel技術を身につけましょう。

この記事でわかること
- COUNTIFS関数の基本動作(AND条件)とOR条件が難しい理由
- COUNTIF同士の足し算でOR条件を作る方法と重複カウントの注意点
- SUMPRODUCT関数を使った正確なOR条件カウント
- SUM+COUNTIF配列数式による一括処理
- Excel 2021/365の新関数(FILTER+COUNTA)を使う最新の方法
- 3つ以上の条件を組み合わせた複雑なOR条件の書き方
- ビジネスシーンで使える売上集計・人事データの実例
COUNTIFS関数の基本を確認しよう
まず、COUNTIFS関数の基本的な動作を確認しておきましょう。COUNTIFSは「複数の条件をすべて満たすセルの個数を数える」AND条件の関数です。
COUNTIFS関数の基本構文
=COUNTIFS(条件範囲1, 条件1, 条件範囲2, 条件2, …)
たとえば「営業部(B列)かつ売上が100万以上(C列)の人数を数える」場合は次のように書きます。
=COUNTIFS(B2:B100,"営業部",C2:C100,">=1000000")
この数式は「B列が営業部 かつ C列が100万以上」という条件を両方満たす行だけを数えます。これがAND条件の動作です。
AND条件とOR条件の違い
| 条件の種類 | 意味 | 例 | COUNTIFSの対応 |
|---|---|---|---|
| AND条件 | すべての条件を満たす | 営業部 かつ 売上100万以上 | 直接対応(標準機能) |
| OR条件 | どれか一つの条件を満たす | 営業部 または 企画部 | 直接非対応(工夫が必要) |
なぜCOUNTIFSはOR条件が難しいのか
COUNTIFS関数に複数の条件を指定すると、それらはすべてAND条件として処理されます。同じ列に対して2つの条件を指定したとしても、同時に両方を満たすことはできないので、カウント結果が0になってしまうこともあります。
たとえば次の数式は意図した通りには動きません。
=COUNTIFS(B2:B100,"営業部",B2:B100,"企画部")
これは「B列が営業部 かつ 企画部」という不可能な条件を指定しており、常に0が返ります。OR条件を実現するには別の方法が必要です。

方法1: COUNTIF同士の足し算(最もシンプル)
最も直感的で簡単な方法は、条件ごとにCOUNTIF(またはCOUNTIFS)を個別に計算し、それらを足し算する方法です。
基本的な書き方
=COUNTIF(B2:B100,"営業部")+COUNTIF(B2:B100,"企画部")
この数式は「B列が営業部の行数」と「B列が企画部の行数」を別々に数えて合計します。
COUNTIFSと組み合わせた例
「営業部で売上100万以上」または「企画部で売上50万以上」を数える場合:
=COUNTIFS(B2:B100,"営業部",C2:C100,">=1000000")
+COUNTIFS(B2:B100,"企画部",C2:C100,">=500000")
重複カウントの問題に注意
この方法には重要な注意点があります。条件が重複する可能性がある場合(たとえば同じ行が両方の条件を満たす場合)、そのデータが二重にカウントされてしまいます。
たとえば「赤色 または 大サイズ」を数えたいとき、「赤色かつ大サイズ」のデータが存在すると、それが2回カウントされます。
=COUNTIF(A2:A100,"赤")+COUNTIF(B2:B100,"大")
=COUNTIF(A2:A100,"赤")+COUNTIF(B2:B100,"大")-COUNTIFS(A2:A100,"赤",B2:B100,"大")
同じ列に対するOR条件(営業部 または 企画部)では、一つの行が両方の値を同時に持つことはないため、重複カウントの心配はありません。異なる列にまたがるOR条件では、上記の重複修正が必要になります。
方法2: SUMPRODUCT関数を使ったOR条件(推奨)
重複カウントを自動的に除外したい場合や、より柔軟なOR条件を設定したい場合は、SUMPRODUCT関数が非常に強力です。
SUMPRODUCT関数でOR条件を作る基本パターン
=SUMPRODUCT(((B2:B100="営業部")+(B2:B100="企画部")>0)*1)
この数式の仕組みを解説します。
(B2:B100="営業部")→ 各セルが営業部ならTRUE(1)、そうでなければFALSE(0)の配列(B2:B100="企画部")→ 同様に企画部かどうかの配列- 両方を足すと、どちらか一方でも一致する行は1以上になる
>0の比較で、1以上なら1(TRUE)、0なら0(FALSE)に変換- SUMPRODUCTが配列の合計を計算
AND条件とOR条件を組み合わせる
=SUMPRODUCT(((B2:B100="営業部")+(B2:B100="企画部")>0)*(C2:C100>=1000000))
SUMPRODUCTでは「+」がOR条件、「*」がAND条件に相当します。この使い分けを覚えておくと、複雑な条件も自在に表現できます。
3つ以上のOR条件を組み合わせる
=SUMPRODUCT(((B2:B100="営業部")+(B2:B100="企画部")+(B2:B100="技術部")>0)*1)
数値範囲のOR条件
=SUMPRODUCT(((C2:C100<500000)+(C2:C100>=2000000)>0)*1)
方法3: SUM+COUNTIF配列数式
複数の条件をまとめて配列として指定できる方法です。条件の種類が多い場合に特に便利です。
基本的な書き方
{=SUM(COUNTIF(B2:B100,{"営業部","企画部","技術部"}))}
=SUM(COUNTIF(B2:B100,{"営業部","企画部","技術部"}))
波括弧 {} で条件を列挙することで、複数の条件を一括して処理できます。Excel 2019以前では入力後にCtrl+Shift+Enterで確定する必要がありますが、Microsoft 365やExcel 2021ではEnterキーだけで動作します。
この方法の特徴
| 特徴 | 内容 |
|---|---|
| 記述のシンプルさ | 条件を波括弧内にカンマ区切りで列挙するだけ |
| 重複カウント | 同じ列へのOR条件なら重複なし。異なる列では要注意 |
| AND条件との組み合わせ | COUNTIFSと配列を組み合わせれば可能 |
| Excel 2019以前 | Ctrl+Shift+Enterで入力が必要 |
COUNTIFSと配列を組み合わせたAND+OR条件
=SUM(COUNTIFS(B2:B100,{"営業部","企画部"},D2:D100,"2025年度"))
方法4: Excel 2021/365の新関数を使う方法
Excel 2021およびMicrosoft 365では、FILTER関数とCOUNTA関数を組み合わせることで、より直感的にOR条件のカウントができます。
FILTER+COUNTAによるOR条件カウント
=COUNTA(FILTER(B2:B100,(B2:B100="営業部")+(B2:B100="企画部")))
FILTER関数はOR条件に一致する行を抽出し、COUNTAがその件数を数えます。
FILTER+COUNTAでAND+OR条件を組み合わせる
=COUNTA(FILTER(B2:B100,
((B2:B100="営業部")+(B2:B100="企画部"))*(C2:C100>=1000000)))
空の配列エラーへの対処
条件に一致するデータがない場合、FILTER関数はエラーを返します。IFERROR関数で0を返すよう対処しておくと安心です。
=IFERROR(COUNTA(FILTER(B2:B100,(B2:B100="営業部")+(B2:B100="企画部"))),0)

4つの方法の比較表
| 方法 | 対応バージョン | 重複カウント | AND組み合わせ | おすすめ場面 |
|---|---|---|---|---|
| COUNTIF足し算 | 全バージョン | 要注意 | ◎ | 条件2〜3個、同一列OR |
| SUMPRODUCT | 全バージョン | 自動除外 | ◎ | 異なる列のOR、複雑な条件 |
| SUM+COUNTIF配列 | 全バージョン | 同一列ならなし | △ | 条件が多数、同一列OR |
| FILTER+COUNTA | 2021/365のみ | 自動除外 | ◎ | 最新Excel・視覚的に分かりやすい |
ビジネスシーンでの応用例
応用例1: 売上集計(部門別OR条件)
月次売上レポートで「営業1課または営業2課」の受注件数を集計する場面:
=SUMPRODUCT(((B2:B1000="営業1課")+(B2:B1000="営業2課")>0)*1)
=SUMPRODUCT(((B2:B1000="営業1課")+(B2:B1000="営業2課")>0)*(C2:C1000>=1000000))
応用例2: 人事データ(複数拠点・複数職種)
=SUMPRODUCT(((B2:B500="東京")+(B2:B500="大阪")>0)*(D2:D500="A"))
=SUM(COUNTIF(C2:C500,{"エンジニア","デザイナー","PM"}))
応用例3: 在庫管理(複数カテゴリの在庫切れ確認)
=SUMPRODUCT(((B2:B200="食品")+(B2:B200="飲料")>0)*(C2:C200<=10))
応用例4: アンケート集計(複数回答のカウント)
=SUMPRODUCT(((B2:B300="非常に満足")+(C2:C300="非常に満足")+(D2:D300="非常に満足")>0)*1)
この記事に関連するおすすめ商品
ロジクール ワイヤレスキーボード 静音 K295
約3,000〜4,500円
長時間のExcel数式入力に最適・静音設計
ロジクール 静音 ワイヤレスマウス M650
約3,500〜5,500円
Excelセル選択が快適・静音クリック
Microsoft 365 Personal 1年版 公式
約14,000円
COUNTIFS含む最新Excel機能を常に使える公式ライセンス
※ 価格は変動する場合があります。最新価格はリンク先でご確認ください
よくある質問(FAQ)
Q1. COUNTIFS関数に同じ列で2つ条件を書いたら0になります。なぜですか?
COUNTIFS関数は複数の条件をAND条件(すべてを満たす)として処理するため、「B列が営業部 かつ B列が企画部」のような不可能な条件を指定すると必ず0になります。OR条件の場合は、COUNTIF同士の足し算やSUMPRODUCT関数を使いましょう。
Q2. COUNTIF同士を足し算すると重複が出るのはどんな場合ですか?
異なる列に対してOR条件を設定したとき、同一行が複数の条件を同時に満たす可能性がある場合に重複カウントが発生します。同じ列に対する複数の値のOR(「営業部または企画部」など)では、一つのセルが複数の値を同時に持つことはないため重複は発生しません。
Q3. SUMPRODUCT関数のORとANDの書き方の違いを教えてください。
SUMPRODUCT関数内では「+」演算子がOR条件、「*」演算子がAND条件に相当します。
((A1:A100="赤")+(A1:A100="青")>0) → 赤 または 青
((A1:A100="赤")*(B1:B100>10)) → 赤 かつ 10より大きい
Q4. 配列数式(Ctrl+Shift+Enter)が必要なのはどの方法ですか?
Excel 2019以前のバージョンでSUM+COUNTIF配列数式を使う場合、数式入力後にEnterではなくCtrl+Shift+Enterで確定する必要があります。数式バーに {=SUM(…)} のように波括弧が自動で付きます。Microsoft 365やExcel 2021ではCtrl+Shift+Enterは不要で通常のEnterで動作します。SUMPRODUCT関数は全バージョンで通常のEnterで動作します。
Q5. ワイルドカードを使ったOR条件はできますか?
はい、可能です。COUNTIF関数はワイルドカード(* ? ~)に対応しているため、COUNTIF同士の足し算やSUM+COUNTIF配列数式でワイルドカードを使えます。
=COUNTIF(A2:A100,"東京*")+COUNTIF(A2:A100,"大阪*")
ただし、SUMPRODUCT内でのワイルドカード使用には別途ISNUMBER+SEARCH関数を組み合わせる必要があります。
Q6. 条件に空白セルを含むOR条件はどう書きますか?
空白セルを条件に含める場合は "" を使います。
=COUNTIF(B2:B100,"営業部")+COUNTIF(B2:B100,"")
SUMPRODUCTでは ((B2:B100="営業部")+(B2:B100="")>0)*1 と書けます。
Q7. FILTER関数が使えないのはなぜですか?
FILTER関数はExcel 2021またはMicrosoft 365のサブスクリプション版でのみ使用できます。Excel 2019以前ではこの関数は存在しないため、代わりにSUMPRODUCTまたはSUM+COUNTIF配列数式を使ってください。
まとめ
ExcelのCOUNTIFS関数でOR条件を実現する方法を4つ紹介しました。
- COUNTIF足し算: 最もシンプルだが重複カウントに注意。同じ列へのOR条件なら安全に使える
- SUMPRODUCT関数: 重複を自動除外でき、AND+OR条件の組み合わせも柔軟。汎用的に最も推奨
- SUM+COUNTIF配列数式: 条件が多数ある場合に記述がシンプル。同じ列への複数条件に適する
- FILTER+COUNTA: Excel 2021/365限定だが、直感的で読みやすい記述が可能
特に汎用性の高いSUMPRODUCT関数はOR条件だけでなく、複雑なAND+OR条件にも対応できるため、マスターしておくと非常に便利です。ビジネスの現場でよく遭遇する売上集計・人事データ・在庫管理など、様々な場面でこれらの技術を活用してください。
Excel関数に慣れてきたら、COUNTIFSだけでなくSUMIFSやAVERAGEIFSでも同じ考え方でOR条件を組み合わせることができます。SUMPRODUCT関数の「+はOR、*はAND」という原則を覚えておくと、データ分析の幅が大きく広がります。
minto.tech スマホ(Android/iPhone)・PC(Mac/Windows)の便利情報をお届け! 月間アクセス160万PV!スマートフォン、タブレット、パソコン、地デジに関する素朴な疑問や、困ったこと、ノウハウ、コツなどが満載のお助け記事サイトはこちら!