Excelで複数の条件に基づいて処理を分けたい場面は多いでしょう。
しかし、IF関数をネスト(入れ子)させると、数式が複雑になりすぎて読みにくくなることがあります。
この記事では、ExcelのIF関数で複数条件を扱うためのIFS関数、AND関数、OR関数の使い方を解説します。
これらの関数を理解すれば、条件分岐をより効率的かつ分かりやすく記述できるようになります。
ADVERTISEMENT
目次
IFS関数・AND関数・OR関数とは
Excelで複数の条件を判定し、それぞれに応じた結果を返すための関数群です。
IFS関数は、複数の条件とその結果を順番に指定するだけで、IF関数のネストを解消できます。
AND関数とOR関数は、単独で使うというよりは、IF関数やIFS関数と組み合わせて、条件判定のロジックをより柔軟にするために使用します。
AND関数は、指定した全ての条件が真(TRUE)である場合に真を返します。
OR関数は、指定した条件のうち、いずれか一つでも真(TRUE)であれば真を返します。
これらの関数を使い分けることで、複雑な条件分岐もスッキリと記述できるようになります。
IFS関数で複数条件をシンプルに処理する
IFS関数は、Excel 2019およびMicrosoft 365で利用できる比較的新しい関数です。
それ以前のバージョンでは使用できないため、注意が必要です。
IFS関数の基本的な構文は以下の通りです。
`=IFS(条件1, 真の場合の値1, 条件2, 真の場合の値2, …)`
この関数は、指定された条件を順番に評価します。
最初に真(TRUE)となった条件に対応する値を返して、処理を終了します。
もし、どの条件も真とならなかった場合は、エラー値#N/Aを返します。
これを避けるために、最後に「TRUE」を条件として設定し、それ以外の場合のデフォルト値を指定するのが一般的です。
例えば、テストの点数に応じて成績(優・良・可・不可)を付ける場合を考えます。
点数が90点以上なら「優」、80点以上なら「良」、60点以上なら「可」、それ以外は「不可」としたい場合、IFS関数は以下のように記述できます。
IFS関数を使った具体的な入力手順
- 結果を表示したいセルを選択する
例えば、点数が入力されているA列の隣のB列に成績を表示したい場合、B2セルなどを選択します。 - 数式バーにIFS関数を入力する
選択したセルに、以下の数式を入力します。ここでは、A2セルの点数に基づいて成績を判定します。
`=IFS(A2>=90, “優”, A2>=80, “良”, A2>=60, “可”, TRUE, “不可”)` - Enterキーで確定する
数式を入力したらEnterキーを押して確定します。 - 数式をオートフィルでコピーする
B2セルの右下隅にあるフィルハンドルをダブルクリックするか、下にドラッグして、他の行にも数式をコピーします。
これで、点数に応じた成績が自動的に表示されます。
IFS関数を使うことで、IF関数を何重にも重ねる必要がなくなり、数式が非常に読みやすくなります。
ADVERTISEMENT
AND関数で全ての条件が真の場合に結果を返す
AND関数は、指定した複数の論理条件がすべて真(TRUE)である場合にTRUEを返します。
いずれか一つの条件でも偽(FALSE)であれば、AND関数はFALSEを返します。
構文は以下の通りです。
`=AND(論理1, [論理2], …)`
AND関数は単独で使うよりも、IF関数やIFS関数と組み合わせて使うことが多いです。
例えば、ある商品の売上金額が10,000円以上かつ、販売個数が50個以上の場合に「目標達成」と表示したいとします。
売上金額がA2セル、販売個数がB2セルにある場合、IF関数とAND関数を組み合わせると以下のようになります。
AND関数とIF関数を組み合わせた入力手順
- 結果を表示したいセルを選択する
例えば、C2セルを選択します。 - 数式バーにIF関数とAND関数を入力する
選択したセルに、以下の数式を入力します。
`=IF(AND(A2>=10000, B2>=50), “目標達成”, “”)` - Enterキーで確定する
数式を入力したらEnterキーを押して確定します。 - 数式をオートフィルでコピーする
C2セルのフィルハンドルをダブルクリックするか、下にドラッグして、他の行にも数式をコピーします。
この数式では、AND関数で「A2が10000以上」かつ「B2が50以上」という両方の条件が満たされているかを確認しています。
もし両方の条件が満たされていれば(TRUE)、IF関数の2番目の引数である「目標達成」が表示されます。
そうでなければ(FALSE)、3番目の引数である空文字列(“”)が表示されます。
OR関数でいずれかの条件が真の場合に結果を返す
OR関数は、指定した複数の論理条件のうち、いずれか一つでも真(TRUE)であればTRUEを返します。
すべての条件が偽(FALSE)である場合にのみ、OR関数はFALSEを返します。
構文は以下の通りです。
`=OR(論理1, [論理2], …)`
AND関数と同様に、OR関数もIF関数やIFS関数と組み合わせて使うのが一般的です。
例えば、ある商品の在庫が「赤字」または「欠品」の場合に「要確認」と表示したいとします。
在庫状況がA2セルにある場合、OR関数とIF関数を組み合わせると以下のようになります。
OR関数とIF関数を組み合わせた入力手順
- 結果を表示したいセルを選択する
例えば、B2セルを選択します。 - 数式バーにIF関数とOR関数を入力する
選択したセルに、以下の数式を入力します。
`=IF(OR(A2=”赤字”, A2=”欠品”), “要確認”, “”)` - Enterキーで確定する
数式を入力したらEnterキーを押して確定します。 - 数式をオートフィルでコピーする
B2セルのフィルハンドルをダブルクリックするか、下にドラッグして、他の行にも数式をコピーします。
この数式では、OR関数で「A2が”赤字”」または「A2が”欠品”」のいずれかの条件が満たされているかを確認しています。
いずれかの条件が満たされていれば(TRUE)、IF関数の2番目の引数である「要確認」が表示されます。
そうでなければ(FALSE)、3番目の引数である空文字列(“”)が表示されます。
IF関数のネストとの比較
IFS関数やAND・OR関数を組み合わせる方法を理解するために、IF関数のネスト(入れ子)で同じことを行う場合と比較してみましょう。
例えば、成績判定でIF関数のネストを使う場合、以下のようになります。
`=IF(A2>=90, “優”, IF(A2>=80, “良”, IF(A2>=60, “可”, “不可”)))`
この数式は、条件が少ないうちはまだ読めますが、条件が増えるにつれて「)」の数が多くなり、どこでどの条件が評価されているのか把握しにくくなります。
IFS関数を使えば、この数式は前述の通り以下のようにスッキリ書けます。
`=IFS(A2>=90, “優”, A2>=80, “良”, A2>=60, “可”, TRUE, “不可”)`
このように、IFS関数は複数条件の処理を直感的に記述できるため、数式の可読性と保守性が大幅に向上します。
AND関数やOR関数をIF関数と組み合わせる場合も、ネストを深くするよりも、論理演算子(AND・OR)で条件を整理した方が、意図が明確になります。
よくある失敗パターンと対処法
これらの関数を使う上で、よくある失敗パターンとその対処法をまとめました。
IFS関数で#N/Aエラーが表示される
これは、IFS関数で指定した全ての条件が偽(FALSE)になった場合に発生します。
対処法:
IFS関数の最後に、常に真となる条件(TRUE)と、それに対応するデフォルト値を設定します。
例: `=IFS(A2>90, “A”, TRUE, “B”)` のように、最後の引数で `TRUE, “デフォルト値”` を指定します。
AND関数・OR関数で意図しない結果になる
これは、条件の指定方法が間違っているか、ANDとORのどちらを使うべきかを誤っている場合に起こります。
対処法:
- 条件の確認
AND関数は「すべて真」、OR関数は「いずれか一つ真」であることを再確認し、目的に合った方を選びます。 - 論理式の正確性
数式内で比較演算子(=, >, <, >=, <=, <>)が正しく使われているか、文字列の比較ではダブルクォーテーション(“)で囲まれているかなどを確認します。 - 数式の評価
Excelの「数式の評価」機能(「数式」タブ > 「数式分析」グループ > 「数式の評価」)を使って、条件がどのように評価されているかをステップごとに確認すると、原因特定に役立ちます。
ExcelのバージョンでIFS関数が使えない
Excel 2019より前のバージョン(Excel 2016, 2013など)では、IFS関数は搭載されていません。
対処法:
IFS関数の代わりに、IF関数をネストさせて記述するか、AND関数やOR関数をIF関数と組み合わせて使用します。
例(IFネスト):`=IF(A2>=90, “優”, IF(A2>=80, “良”, IF(A2>=60, “可”, “不可”)))`
例(AND・OR):状況によりますが、複数の条件をANDやORでまとめ、それをIF関数に渡します。
IF関数、IFS関数、AND関数、OR関数の使い分け
どの関数を使うべきかは、条件の数や複雑さ、Excelのバージョンによって異なります。
以下に、使い分けの目安を示します。
| 状況 | 推奨される関数 | 理由 |
|---|---|---|
| 単純な真偽判定(条件1つ) | IF関数 | 最も基本的で分かりやすい |
| 複数の条件がすべて真である必要がある | IF関数 + AND関数 | 条件の組み合わせが明確になる |
| 複数の条件のいずれか一つが真であれば良い | IF関数 + OR関数 | 条件の網羅性が示せる |
| 複数の条件分岐があり、IF関数のネストが深くなる(Excel 2019以降) | IFS関数 | 数式がスッキリし、可読性が高い |
| Excel 2019より前のバージョンで複数条件分岐 | IF関数のネスト | IFS関数が使えないため、代替策として |
特に、Excel 2019以降をお使いであれば、複数条件の分岐にはIFS関数を積極的に活用することをおすすめします。
IF関数とAND・OR関数を組み合わせる方法は、IFS関数が使えない環境での代替策として、また、より複雑な条件ロジックを構築する際に役立ちます。
まとめ
複数条件のIF関数(IFS・AND・OR)を使いこなすための要点
- IFS関数: 複数の条件分岐をシンプルに記述でき、Excel 2019以降で利用可能です。ネストしたIF関数よりも可読性が高くなります。
- AND関数: 指定した全ての条件が真(TRUE)である場合にTRUEを返します。IF関数と組み合わせて「〜かつ〜」の条件を表現します。
- OR関数: 指定した条件のいずれか一つでも真(TRUE)であればTRUEを返します。IF関数と組み合わせて「〜または〜」の条件を表現します。
- IF関数のネスト: IFS関数が使えない場合に代替手段となりますが、条件が多くなると数式が複雑化しやすいです。
この記事では、Excelで複数条件を扱うためのIFS関数、AND関数、OR関数の使い方と、IF関数のネストとの比較を解説しました。
IFS関数を使いこなせば、複雑な条件分岐もスッキリと記述でき、業務効率が向上します。
Excel 2019以降をお使いの方は、ぜひIFS関数を積極的に活用してみてください。
また、IF関数とAND・OR関数を組み合わせるテクニックも、様々な状況で役立つでしょう。
ADVERTISEMENT
超解決 Excel・Word研究班
企業のDX支援や業務効率化を専門とする技術者チーム。20年以上のExcel・Word運用改善実績に基づき、不具合の根本原因と最短の解決策を監修しています。ExcelとWordを使った「やりたいこと」「困っていること」「より便利な使い方」をクライアントの視点で丁寧に提供します。
Office・仕事術の人気記事ランキング
- 【Outlook】宛先が「オートコンプリート」に出ない・間違っている時の修正手順|履歴の削除と再構築
- 【Outlook】メールの受信が数分遅れる!リアルタイムで届かない時の同期設定と送受信グループ設定
- 【Word】差し込み印刷で数字の桁を整える!金額にカンマ(桁区切り)を入れる設定
- 【Excel】矢印キーで「セルが動かず画面がスクロールする」!ScrollLockの解除方法(ノートPC対応)
- 【Outlook】「メール送信を5分遅らせる」設定!誤送信を防ぐ最強のディレイ機能
- 【神技】保存せずに閉じたExcel・Wordファイルを復元する!消えたデータを復活させる4つの救出法
- 【Outlook】予定表の「祝日」が表示されない!最新カレンダーの追加と二重表示の修正手順
- 【Teams】会議の「参加者リスト」を出席後にダウンロードする!誰が参加したか確認する手順
- 【Teams】メッセージを「保存済み」にして後で読む!重要なチャットをブックマークして整理する技
- 【Excel】文字がセルの枠からはみ出す・隠れる!「折り返して表示」と「縮小して全体を表示」の使い分け
