条件
OR関数の使い方・読み方
読み方:OR は「オア」と読みます。(一般的な読み方です。公式に読み仮名の定めはありません)
ORは、指定した条件のどれか1つでも満たすかどうかを判定する関数です。「または」の判定に使います。
このページの中身(25項目)
この記事の書式と対応環境の出どころ(2026-08-26 確認)
- Google スプレッドシート ヘルプ:公式の書式は
OR(論理式1, 論理式2)
https://support.google.com/docs/answer/3093306 - Microsoft サポート:OR 関数
https://support.microsoft.com/ja-jp/excel/functions/or-function
関数の仕様は追加・変更されることがあります。書式が合わないときは、上の公式ページで最新をご確認ください。
1つでも満たせば TRUE、すべて外れたときだけ FALSE を返します。

書式
=OR(条件1, 条件2, ...)
条件はいくつでも並べられます。
基本の動き
=OR(A2 >= 80, B2 >= 80)
A2かB2のどちらかが80以上なら TRUE です。両方が80以上でも TRUE になります。「どちらか一方だけ」という意味ではない点に注意してください。
OR単体では TRUE / FALSE としか表示されないので、実務では IF の中で使います。
=IF(OR(A2 >= 80, B2 >= 80), "どちらか合格", "両方不合格")

実用例
複数の値のどれかに一致するか
=IF(OR(A2="東京", A2="神奈川", A2="千葉", A2="埼玉"), "首都圏", "地方")
これは最も多い使い方です。ただし、候補が増えると数式が長くなります。
候補が5つを超えたら COUNTIF を使うほうが短く、保守もしやすくなります。
=IF(COUNTIF(リスト!A:A, A2) > 0, "首都圏", "地方")
別シートにリストを持てば、数式を触らずに候補を追加できます。 対象が増減する運用ならこちらを推奨します。
除外条件をまとめる
=IF(OR(A2="", A2="-", A2="該当なし"), "未入力扱い", "有効")
「空欄」「ハイフン」「該当なし」を同じ扱いにする、といったデータの正規化に使えます。
期限切れか未処理かを検知する
=IF(OR(D2="未処理", E2<TODAY()), "要対応", "")
どちらか一方でも当てはまれば要対応、という判定です。
条件付き書式で使う
条件付き書式の「カスタム数式」に入れると、複数の条件のどれかに当たる行を目立たせられます。
=OR($D2 = "遅延", $D2 = "エラー", $D2 = "要確認")
列だけを $ で固定するのがポイントです。行を固定しないことで、各行がそれぞれ判定されます。
足し算で代用できる
配列を扱う数式の中では、ORはうまく働きません。代わりに足し算 + を使います。
=SUMPRODUCT((A2:A100="東京") + (A2:A100="大阪"))
TRUE は1、FALSE は0なので、足して1以上になれば「どちらか成立」です。足し算がORに相当します。
なお、両方が同時に成立しうる条件では合計が2になることがあります。件数を数える目的なら、>0 で1に丸めてください。
=SUMPRODUCT(((A2:A100="東京") + (A2:A100="大阪") > 0) * 1)
掛け算が AND に相当するのと対になっています。
ANDと組み合わせる
=IF(AND(OR(A2="東京", A2="大阪"), B2>=80), "対象", "対象外")
「東京または大阪、かつ80点以上」という判定です。
入れ子が2段を超えたら、途中の判定を別の列に出すほうが確実です。数式は短いほど間違いに気づけます。作業列は最後に非表示にすれば見た目も損ないません。
XORもある
「どちらか一方だけ」を判定したい場合は XOR を使います。
=XOR(A2>=80, B2>=80)
両方満たすと FALSE になります。使う場面は限られますが、「重複して申請されていないか」のようなチェックで役立ちます。
注意点
空白セルは条件によって扱いが変わります
A2="" は空欄なら TRUE ですが、A2=0 も空欄で TRUE になります。空欄と0を区別したいなら ISBLANK を使ってください。
大文字小文字は区別されません
A2="tokyo" は "TOKYO" にも一致します。区別したいなら EXACT を使います。
前後のスペースは区別されます
外部から取り込んだデータでは TRIM を挟むと安全です。
「または」が必要になる場面を見極める
条件をORで書く前に、そもそも本当にORが必要かを考える価値があります。実務では、ORで並べている条件が、データの持ち方を変えるだけで消えることがよくあります。
たとえば、東京か神奈川か千葉か埼玉なら対象、という条件を書いているとします。これは四つの条件をORで並べることになりますが、元データに「地域区分」という列を一本足して、これらをまとめて関東と入れておけば、条件は一つで済みます。県が増えたときも、数式ではなく区分の表を直すだけです。
同じことは、商品分類でも顧客区分でも起こります。ORが三つ以上並んでいたら、それは分類の列が足りていないという合図だと考えてください。
もうひとつ、条件が「特定のいずれか」ではなく「一覧に含まれるか」である場合は、件数を数える関数のほうが適しています。一覧を別の場所に置いて、そこに含まれるかどうかを判定する形です。一覧が増えても数式を触る必要がありません。
ORを使うのが自然なのは、性質の違う条件を並べる場合です。金額が大きいか、または期日が過ぎているか。この二つはまったく別の観点なので、区分にまとめることができません。こういう場合こそORの出番です。
足し算で置き換えられる理由
真偽値は内部的に一と零として扱われます。この性質を使うと、ORの代わりに足し算が書けます。
条件を足し合わせると、どれか一つでも真であれば一以上になります。ゼロより大きいかどうかを判定すれば、ORと同じ結果になります。
この書き方が必要になるのは、配列を扱う関数の中です。条件に合う行を抽出する関数や、配列に対して条件付きで集計する関数では、行ごとの真偽値の並びを条件として渡します。ORは複数の値をまとめて一つの真偽値にしてしまうため、行ごとの判定が失われます。足し算なら、行ごとの結果が並びとして残ります。
注意点として、複数の条件が同時に真になる行では、足した結果が二や三になります。単純に真偽値として扱う場面では問題ありませんが、そのまま件数として数えると重複します。ゼロより大きいかを判定して真偽値に戻すか、重複を意識した書き方にしてください。
かつ条件を掛け算、または条件を足し算、と対で覚えておくと、配列を扱う場面で迷わなくなります。
排他的な「または」を書きたいとき
日常語の「または」には二つの意味があります。どちらか一方でもよいという意味と、どちらか一方だけという意味です。ORは前者にあたります。両方が真の場合も真を返します。
どちらか一方だけが真のときにだけ真としたい場合は、排他的論理和を使います。二つの条件が異なるときに真、同じときに偽を返します。
使う場面は限られますが、たとえば入力の整合性チェックに使えます。二つの欄のうち、どちらか一方だけを埋めてほしい場合。両方埋まっていても、両方空でも不正、という判定ができます。
同じことをORとANDの組み合わせで書くこともできます。どちらかが真、かつ、両方が真ではない、という形です。読みやすさで選んでください。
三つ以上の条件に対しては、真の数を数えるほうが分かりやすくなります。条件を足し合わせて、結果がちょうど一かどうかを判定する形です。
条件が多いときの整理
ORで並べる条件が増えてきたら、いくつかの整理方法があります。
第一に、条件を一覧として外に出す方法です。判定に使う値を別の範囲に並べておき、その一覧に含まれるかどうかを判定します。条件の追加が一覧への行追加だけで済むので、保守が楽になります。
第二に、区分の列を作る方法です。前述のとおり、複数の値をまとめる区分があるなら、そちらで持つほうが自然です。
第三に、作業列で中間結果を出す方法です。条件のまとまりごとに真偽値を出しておき、最終判定はそれらを組み合わせるだけにします。どの条件で該当したのかも分かるようになります。
第四に、数式の中で改行する方法です。条件ごとに行を分けると、構造が見えます。動作は変わりません。
いずれの方法も、数式を短くすることが目的ではありません。後から読んで意図が分かる形にすることが目的です。三か月後の自分は他人だと思って書いてください。
条件を一覧で持つという設計
いずれかに該当するかを判定したい場合、条件を数式に並べるより、一覧として持つほうが保守しやすくなります。
対象となる値を別の範囲に並べておき、その一覧に含まれるかどうかを判定します。件数を数える関数で、一以上なら該当と判断できます。
この方法の利点は三つあります。第一に、対象が増えたときに一覧へ行を足すだけで済むことです。数式を触る必要がありません。第二に、現在の対象が一覧で見えることです。数式の中に埋もれていると、確認するのに読み解く必要があります。第三に、同じ一覧を複数の場所で使い回せることです。
欠点は、一覧を置く場所が必要になることです。専用のシートを作って非表示にする運用が一般的です。
判断の目安としては、対象が三つを超えたら一覧に外出しすることを検討してください。二つまでなら数式に書いても管理できますが、それ以上になると、どこに何が書いてあるか分からなくなります。
判定を分けて持つ
条件が複雑になったとき、一本の数式にまとめるより、作業列に分けるほうが結果的に楽になります。
条件のまとまりごとに列を用意し、それぞれで真偽値を出します。最終的な判定は、その列を組み合わせるだけです。
この方法の利点は、どの条件で該当したのかが見えることです。一本の数式では、結果が偽になったときに、どの条件で外れたのかが分かりません。列に分けておけば、一目で分かります。
もうひとつの利点は、条件の追加が容易なことです。列を一本足して、最終判定に加えるだけで済みます。数式を書き換える必要がありません。
表が汚れるという抵抗はありますが、作業列は非表示にできます。印刷にも影響しません。
他人が触るファイルでは、この方法を選んでください。数式を読み解けない人でも、どの条件で判定されているかが見えます。引き継ぎのときの説明も楽になります。
自分だけが使う一時的なファイルなら、一本にまとめても構いません。使い分けの基準は、そのファイルの寿命と、触る人の数です。
例外を条件に組み込む
業務のルールには例外がつきものです。原則はこうだが、この場合だけは違う。こうした例外を条件式に組み込むとき、書き方によって保守性が変わります。
例外を数式の中に直接書くと、なぜその条件があるのかが分からなくなります。特定の取引先だけを除外する条件が数式に埋まっていると、後から見た人はその意図を推測するしかありません。
推奨は、例外を一覧として外に出すことです。除外対象の一覧を作り、その一覧に含まれるかどうかで判定します。一覧には理由を書く列も添えておけば、なぜ例外なのかが記録されます。
例外が増えたときも、一覧に行を足すだけで済みます。数式は変わりません。
例外が減ったときも同様です。行を削除するか、有効期限の列を設けて期間で管理します。
この方法の利点は、例外の全体像が見えることです。数式に散らばっていると、いくつ例外があるのかも分かりません。一覧なら、件数も内容も一目で確認できます。
例外は増えていく性質があります。最初は一つでも、数年後には十を超えることが珍しくありません。最初から一覧で管理する形にしておけば、増えても破綻しません。
「条件」の関数を全体から見る
条件に含まれる関数を、全体から見ておきます。同じカテゴリの関数は、つまずく場所も似ています。この記事のほかに14本あります。
このカテゴリで共通するつまずき
文字列は引用符で囲む必要があります。囲み忘れが最も多い間違いです。1つで理解した内容は、同じカテゴリの他の関数にもそのまま使えます。
どれを使うかの決め方
分岐が3つを超えたら、数式ではなく対応表を引く形にしてください。関数の一覧を眺めて選ぼうとすると、どれも当てはまるように見えて決まりません。
迷ったときは
→ 全関数の一覧 に目的別の索引があります。
数式を書く前の手順
手順を分けると、どこで詰まっているかが分かります。
1. 出したい結果を一文で書く
「何を、どの条件で、どんな形で出したいか」。この一文が書ければ、関数はほぼ決まります。書けないなら、まだ要件が固まっていません。
2. 元データの型を確認する
文字列は引用符で囲む必要があります。囲み忘れが最も多い間違いです。=ISNUMBER(A2) で数値かどうかを確認できます。見た目が同じでも、数値と文字列は別物です。
3. 空欄と0の扱いを決める
未入力なのか、実績が0なのか。表の意味が変わります。どちらとして扱うかを決めてから書いてください。
4. 条件の数を数える
分岐が3つを超えたら、数式ではなく対応表を引く形にしてください。将来条件が増える可能性があるなら、最初から複数条件に対応する形にしてください。
5. 共有先の環境を確認する
新しい関数は、古い環境で開くとエラーになります。社外に渡すファイルでは、この一点で選択肢が変わります。
6. 1行だけ書いて確認する
全行にコピーする前に、1行分の結果が正しいかを見てください。間違ったまま広げると、直す手間が増えます。
どの関数でも共通する確認
以下は、どの関数を使っていても同じです。
参照を固定したか
下方向にコピーする数式では、動いてはいけない参照を固定します。上の数行だけ見て判断しないでください。ずれは下のほうで表面化します。
範囲の行数が揃っているか
複数の範囲を渡す関数では、行数がずれると結果が狂います。エラーにならず値が返るため、気づきにくい種類の間違いです。
型が揃っているか
=ISNUMBER(A2)
数値として入っているかを判定します。システムから書き出したデータでは、これが原因のことが多くあります。
前後に空白が入っていないか
=LEN(A2)&" / "&LEN(TRIM(A2))
数が違えば、余分な空白が入っています。見た目では判別できません。
別の方法で検算したか
同じ数字を別の関数でも出して、突き合わせてください。1つの結果だけを見ても、正しいかどうかは判断できません。
最終行まで確認したか
一番下までスクロールして、結果を見てください。途中から値が変わっていないかを確認します。
引き継ぐときに残すこと
数式は動いていても、意図は残りません。渡す前に、次の点をシート内にメモしてください。3分で終わります。
何を出している数式か
一行で構いません。読めば分かると思っても、数か月後の自分には分かりません。
どの表を参照しているか
参照先のシート名と、更新の担当。別ファイルなら、その場所も書いてください。
該当しないときの扱い
空欄にしているのか、文言を出しているのか、エラーのまま残しているのか。書いていないと、受け取った側は空欄をデータなしと読みます。
触ってはいけない場所
列を挿入すると壊れる数式がある場合、必ず書き残してください。この一行があるだけで、引き継ぎ後の事故が大きく減ります。
使った関数の対応環境
新しい関数を使っている場合、古い環境では開けません。共有の範囲が広がる可能性があるなら、明記してください。
確定した期間は値にする
締めた月の集計は、値貼り付けにしてください。参照元を消しても壊れなくなり、ファイルも軽くなります。
このサイトの収録状況
全201本を、次のカテゴリに分けて収録しています。
| カテゴリ | 記事数 |
|---|---|
| 目的別 | 51本 |
| 集計 | 47本 |
| 文字列 | 31本 |
| 日付 | 19本 |
| 検索・参照 | 15本 |
| 条件 | 15本 ←この記事 |
| 機能 | 12本 |
| 配列・抽出 | 10本 |
| 関数一覧 | 1本 |
探し方の順番
関数名が分かっているなら検索窓から。やりたいことだけ決まっているなら「目的別」から。近い関数を比べたいなら、同じカテゴリの一覧から入ってください。
記事の構成
どの記事も、書式・実例・つまずきやすいところ・似た関数との使い分けを同じ順番で並べています。1本読めば、他の記事も同じ場所を探せます。
よくある質問
Q. 条件はいくつまで書けますか
実用上、困らない数を指定できます。ただし三つを超えたら、区分の列や一覧に外出しすることを検討してください。
Q. 空白セルはどう扱われますか
数値として比較すると零になります。意図しない判定を避けるため、先に空白を除外する条件を入れるのが確実です。
Q. 抽出の条件に使えません
配列に対する行ごとの判定では、ORではなく足し算を使ってください。
Q. ANDと混ぜられますか
できます。括弧で優先順位を明示してください。括弧がないと解釈が意図と違うことがあります。→ AND関数の使い方
Q. 結果をそのまま表示できますか
できます。真か偽かがそのまま返ります。
Q. 「〜以外」を書きたいのですが
否定の関数を使うか、不等号を二つ並べた記号で直接書けます。条件が単純なら後者のほうが読みやすくなります。
Q. 条件付き書式で使えますか
使えます。行全体に色を付ける場合は、列だけを固定して行は固定しない書き方にしてください。
Q. 集計の条件に使いたいのですが
条件付き集計の関数は、条件をすべて「かつ」で結びます。または条件は、条件ごとに集計して足すのが確実です。重複して数えられないかだけ確認してください。
まとめ
- 書式は
=OR(条件1, 条件2, ...) - 1つでも満たせば
TRUE - 候補が5つを超えたら COUNTIF +リストに切り替える
- 条件付き書式では列だけ
$で固定する - 配列の中では足し算
+で代用する
関連する関数
OR でつまずきやすいところ
条件を1つの引数にまとめて書いている
=OR(A2="東京"or"大阪") のようには書けません。
引数を分けます。
=OR(A2="東京",A2="大阪")
選択肢が多いなら、COUNTIF で対応表を見るほうが短くなります。
=COUNTIF($H$2:$H$10,A2)>0
対象を増やすときに数式を触らずに済みます。
空欄が TRUE になる
=OR(A2<>"完了",B2<>"完了") は、両方空欄でも TRUE です。
未入力を除きたいなら、空欄チェックを先に置いてください。
条件付き書式で全部に色が付く
参照の固定を間違えている場合がほとんどです。 行全体に色を付けるなら列だけ固定します。
=OR($C2="至急",$D2="遅延")
OR を使わずに書く
SUMPRODUCT の中では、足し算が OR と同じ意味になります。
=SUMPRODUCT(((A2:A100="東京")+(A2:A100="大阪"))>0)
掛け算は AND、足し算は OR です。
足し算のままだと両方に当てはまる行が2と数えられるので、
>0 を付けて1に揃えています。
件数だけなら COUNTIF を2回足すほうが読みやすくなります。 ただし両方に当てはまる行があると二重に数えるので、 重複しない条件のときだけにしてください。