
IF関数で複数条件(3つ)を設定する方法
ExcelのIF関数は条件分岐に便利ですが、「条件が3つ以上ある場合はどうすればいいの?」と悩む方も多いでしょう。この問題に悩んでいる読者様は、もしかすると職場でExcel達人として見られて、まるで検索サイトで尋ねられるかのごとくあれこれと周囲から質問され、日々、職場の皆のために自分の仕事の時間を犠牲にして人一倍頑張っておられることでしょう。
本記事では、IF関数で3つの条件を設定する方法を解説します。
基本のIF関数の構文
=IF(論理式, 真の場合, 偽の場合)
IF関数の基本形は上記のとおりですが、条件が増えると入れ子(ネスト)にする必要があります。
IF関数で3つの条件を設定する方法
例えば、ある生徒のテストの点数に応じて、次のように評価をつけたい場合を考えます。
- 80点以上なら「優秀」
- 60点以上なら「合格」
- それ未満は「不合格」
この場合、IF関数を次のように使用します。
=IF(A1>=80, "優秀", IF(A1>=60, "合格", "不合格"))
結果の例:
A(点数) | B(評価) |
---|---|
85 | 優秀 |
70 | 合格 |
50 | 不合格 |
IF関数とAND・OR関数を組み合わせる
IF関数だけでは複雑な条件を扱うのが難しいですが、AND
関数やOR
関数と組み合わせることで、より柔軟な判定が可能になります。
例えば、次のような評価基準を考えます。
- 数学と英語の両方が80点以上なら「優秀」
- どちらかが60点以上なら「合格」
- それ以外は「不合格」
=IF(AND(A1>=80, B1>=80), "優秀", IF(OR(A1>=60, B1>=60), "合格", "不合格"))

IF関数で3つ以上の条件を扱うにはどうすればいいですか?

条件をネスト(入れ子)にするか、ANDやOR関数と組み合わせる方法がありますよ!

ネストが増えると複雑になりそうですね……

その場合はIFS関数(Excel 2016以降)を使うとシンプルに書けます!
IFS関数を活用する(Excel 2016以降)
IFS関数を使うと、入れ子を使わずに複数条件を判定できます。
=IFS(A1>=80, "優秀", A1>=60, "合格", TRUE, "不合格")
IFS関数の詳しい解説:
A1>=80
の条件が満たされる場合、「優秀」と表示A1>=60
の条件が満たされる場合、「合格」と表示(前の条件を満たさなかった場合のみ)TRUE
は「それ以外」の条件を意味し、残りのすべてのケースでは「不合格」と表示
このようにIFS関数を使うと、IF関数の入れ子を減らし、可読性の高い式を書くことができます。
まとめ
- IF関数で3つの条件を扱うには「入れ子(ネスト)」を使う
- AND・OR関数を組み合わせると柔軟な判定が可能
- Excel 2016以降ならIFS関数を使うとシンプルに書ける
ぜひ、Excelでの条件分岐に役立ててください!
コメント