IF関数はExcelの中でもよく使われる関数ですが、複数条件を扱おうとすると急に難しく感じることがあります。
「条件が2つ以上ある場合はどう書けばいいのか」「ネストとANDやORの違いが分からない」と悩む方は少なくありません。
特に実務では、単純な1条件ではなく、複数の条件を組み合わせて判断する場面が多くなります。
例えば「売上が一定以上かつ在庫ありならOK」といった判断は、IF関数の基本だけでは対応しきれません。
この記事では、IF関数の複数条件の扱い方について、ネストとAND・ORの違いを整理しながら解説します。
初心者の方でも画面をイメージできるよう、具体的なセル例を交えて丁寧に説明します。
なお、IF関数の基本が不安な場合は、先に基礎記事を確認しておくと理解しやすくなります。
目次
IF関数の複数条件とは?基本の考え方を解説
IF関数の複数条件とは、1つの条件だけでなく、複数の条件を組み合わせて結果を分岐する考え方です。
Excelでは主に「ネスト」と「AND・OR関数」の2つの方法で実現します。
まずはシンプルな例から見ていきます。
| A | B | |
|---|---|---|
| 1 | 点数 | 判定 |
| 2 | 85 | |
| 3 | 65 |
この場合、点数に応じて評価を分けたいとします。
例えば「80以上なら合格、それ以外は不合格」とする場合は以下の数式になります。
=IF(A2>=80,”合格”,”不合格”)
A2セルの値が80以上かどうかで結果を分岐しています。
しかし、実務では次のように条件が増えることが多くなります。
「80以上はA評価、60以上はB評価、それ未満はC評価」といったケースです。
このような場合はネスト(入れ子構造)を使います。
=IF(A2>=80,”A”,IF(A2>=60,”B”,”C”))
この数式は「IFの中にIFを入れる」構造になっています。
上から順番に条件を評価し、該当する結果を返します。
別の例として、売上と在庫の両方を判断するケースも見てみます。
| A | B | C | |
|---|---|---|---|
| 1 | 売上 | 在庫 | 判定 |
| 2 | 12000 | あり | |
| 3 | 8000 | なし |
「売上が10000以上かつ在庫ありならOK」とする場合は以下です。
=IF(AND(A2>=10000,B2=”あり”),”OK”,”NG”)
このように、複数条件は「順番で分けるか」「同時に満たすか」で使い方が変わります。
実務では、条件の数が増えるほど数式が複雑になります。
そのため、どの方法を使うかを事前に整理しておくことが重要です。
IF関数の複数条件の使い方(ネスト・AND・ORのやり方)
IF関数で複数条件を扱う方法は主に3つあります。
「ネスト」「AND」「OR」のそれぞれを使い分けることがポイントです。
IF関数ネストの使い方(複数条件の分岐)
ネストは条件ごとに結果を細かく分けたい場合に使用します。
例えば次の表を見てください。
| A | B | |
|---|---|---|
| 1 | 点数 | 評価 |
| 2 | 90 | |
| 3 | 70 | |
| 4 | 50 |
評価基準を以下のように設定します。
- 80以上:A
- 60以上:B
- それ未満:C
この場合の数式は以下です。
=IF(A2>=80,”A”,IF(A2>=60,”B”,”C”))
この数式は上から順に条件を評価します。
A2が80以上ならAを返し、違えば次の条件に進みます。
2つ目の例として、売上ランク分けも考えてみます。
| A | B | |
|---|---|---|
| 1 | 売上 | ランク |
| 2 | 150000 | |
| 3 | 90000 |
=IF(A2>=100000,”上位”,IF(A2>=50000,”中位”,”下位”))
ネストは細かい分類に向いていますが、数式が長くなりやすい点に注意が必要です。
実務では3〜4段階程度までに抑えると管理しやすくなります。
AND関数を使った複数条件の使い方(条件をすべて満たす)
AND関数は「すべての条件を満たした場合のみTRUEになる」関数です。
複数条件を同時に満たす必要がある場合に使います。
以下の例を見てください。
| A | B | C | |
|---|---|---|---|
| 1 | 売上 | 在庫 | 判定 |
| 2 | 12000 | あり | |
| 3 | 12000 | なし |
「売上10000以上かつ在庫ありならOK」とします。
=IF(AND(A2>=10000,B2=”あり”),”OK”,”NG”)
この数式では、A2とB2の両方の条件を満たした場合のみOKになります。
別の例として、勤怠チェックも考えられます。
| A | B | C | |
|---|---|---|---|
| 1 | 出勤日数 | 遅刻回数 | 評価 |
| 2 | 20 | 0 | |
| 3 | 18 | 2 |
=IF(AND(A2>=20,B2=0),”優良”,”要注意”)
ANDは条件が増えても構造がシンプルです。
実務では「複数条件をすべて満たすか」を判断する場面でよく使われます。
OR関数を使った複数条件のやり方(いずれかを満たす)
OR関数は「どれか1つでも条件を満たせばTRUEになる」関数です。
条件のうち1つでも該当すればよい場合に使います。
例えば次のようなケースです。
| A | B | C | |
|---|---|---|---|
| 1 | 欠勤日数 | 遅刻回数 | 判定 |
| 2 | 0 | 3 | |
| 3 | 2 | 0 |
「欠勤または遅刻がある場合は注意」とします。
=IF(OR(A2>0,B2>0),”注意”,”問題なし”)
この数式では、どちらか一方でも条件を満たせば注意になります。
もう1つの例として、商品チェックも考えます。
| A | B | C | |
|---|---|---|---|
| 1 | 在庫 | 状態 | 対応 |
| 2 | 0 | 破損 | |
| 3 | 10 | 正常 |
=IF(OR(A2=0,B2=”破損”),”要対応”,”OK”)
ORは「どれか1つでも該当すればよい」場面で便利です。
実務ではリスク判定やエラーチェックによく使われます。
IF関数の複数条件の応用テクニック①(ネストとANDの組み合わせ)
複雑な条件になると、ネストとANDを組み合わせるケースが増えます。
これは実務でも非常によく使われるパターンです。
例えば次の表を見てください。
| A | B | C | |
|---|---|---|---|
| 1 | 売上 | 在庫 | 評価 |
| 2 | 12000 | あり | |
| 3 | 8000 | あり | |
| 4 | 12000 | なし |
条件は以下です。
- 売上10000以上かつ在庫あり:優良
- 売上10000以上:注意
- それ以外:NG
この場合の数式は以下です。
=IF(AND(A2>=10000,B2=”あり”),”優良”,IF(A2>=10000,”注意”,”NG”))
このように、最初にANDで厳しい条件を判定し、その後にネストで分岐します。
別の例として、成績と出席の組み合わせも考えられます。
=IF(AND(A2>=80,B2>=90),”優秀”,IF(A2>=60,”合格”,”不合格”))
この構造は「優先順位の高い条件から評価する」ことがポイントです。
実務では、条件の順番を間違えると結果が変わるため注意が必要です。
まずは条件を紙やメモで整理してから数式を作るとミスを防げます。
IF関数の複数条件の応用テクニック②(エラー・できない原因と対処法)
IF関数で複数条件を扱うと、エラーや想定外の結果が出ることがあります。
ここではよくある原因と対処法を整理します。
IF関数でできない原因①(カッコの不足や位置ミス)
ネストが増えると、カッコの数が合わなくなることがあります。
原因
- IFの数に対してカッコが足りない
- 閉じる位置がずれている
対処法
- IFの数だけ「(」があるか確認する
- 数式バーで対応するカッコを確認する
IF関数でできない原因②(条件の順番ミス)
ネストでは上から順番に評価されます。
原因
- 広い条件を先に書いてしまう
- 本来評価される条件がスキップされる
対処法
- 条件は厳しいものから順に書く
- 先に紙でロジックを整理する
IF関数でできない原因③(AND・ORの使い分けミス)
ANDとORを間違えると結果が大きく変わります。
原因
- ANDとORの意味を混同している
- 条件の論理が整理できていない
対処法
- ANDは「すべて満たす」
- ORは「どれか満たす」
と明確に理解する
実務では、エラーが出たときに焦る必要はありません。
1つずつ条件を分解して確認すると、原因を見つけやすくなります。
IF関数の複数条件のまとめ(使い分けの考え方)
IF関数の複数条件は、以下の3つの使い分けが重要です。
- ネスト:条件ごとに細かく分岐する
- AND:すべての条件を満たす場合
- OR:どれか1つを満たす場合
特に実務では、ネストとANDを組み合わせるケースが多くなります。
そのため、単体の使い方だけでなく、組み合わせの理解が重要です。
また、数式が複雑になるほどミスが増えやすくなります。
条件を整理してから数式を作る習慣を持つことが大切です。
IF関数は多くの関数の基礎となる重要な機能です。
他の関数と組み合わせることで、さらに実務の幅が広がります。


