【エクセル】IF関数を複数条件で使う方法。OR関数、AND関数、NOT関数と組み合わせる

IF関数をAND関数、OR関数、NOT関数を使って複数条件で利用する方法

Excel(エクセル)のIF関数は、設定した論理式に対して【真】か【偽】かという判定をおこない、表示させる結果を変えることが出来る関数です。

例えば、IF関数は以下のように2つの条件(80以上か、それ以外か)で利用し、【○】や【×】を表示させることが出来ます。

=IF(C4>=80,"〇","×")

それでは、IF関数で【○】と【△】と【×】を表示させる場合は、どのように利用すればよいでしょうか。

そんな時、AND関数OR関数NOT関数と組み合わせて、IF関数を利用するととで実現できます。

この記事では、IF関数で複数条件に対応して、表示方法を分岐させる方法を解説します。

IF関数の構文と引数(おさらい)

IF関数の構文(書式)と引数を紹介します。

IF関数の基本的な使い方を十分理解されている方は、次の見出しまで読み飛ばしてください。

IF関数の構文と引数は以下のようになっています。

=IF(論理式,[値がの場合],[値がの場合])

IF関数の仕組みをフロー図で表すと以下のようになります。

ひし形が論理式の分岐点となっていて、論理式の条件に合っていれば(値が真の場合)の【結果1】を表示し、合っていなければ(値が偽の場合)の【結果2】を表示します。

図解.エクセルのIF関数の構文のイメージ図
図解.エクセルのIF関数の構文のイメージ図

IF関数の基本的な使い方

IF関数の基本的な使い方の例を1つ紹介します。

下のテスト結果表の点数が80点以上か80点未満かによって【○】と【×】を表示させる方法を紹介します。

まず、IF関数を入力するセルを選択し、セルに「=IF(」と入力します。

=IF(

図解.IF関数を2つの条件で使う手順①
図解.IF関数を2つの条件で使う手順①

続いて論理式を入力します。論理式を入力の後は、カンマ「,」で区切ります。

=IF(C3>=80,

図解.IF関数を2つの条件で使う手順➁
図解.IF関数を2つの条件で使う手順➁

論理式の条件に値が入っていれば、「〇」を表示するように引数を指定します。「〇」のような文字列を指定する場合は、””(ダブルクォーテーション)で文字を囲みます。

=IF(G3>=80,"〇",

図解.IF関数を2つの条件で使う手順③
図解.IF関数を2つの条件で使う手順③

論理式の条件に値が入っていない場合、「×」を表示するように引数を指定します。「×」のような文字列を指定する場合は、””(ダブルクォーテーション)で文字を囲みます。

=IF(C3>=80,"〇","×"

図解.IF関数を2つの条件で使う手順④
図解.IF関数を2つの条件で使う手順④

IF関数が完成したら、「Enter」キーで関数を確定さてください。点数に合わせて「〇」か「×」が表示されます。

下のセルにもIF関数を挿入するため、セルの右下にカーソルを合わせて、カーソルのポインターが十字マークに変わった状態で下にドラッグしてください。(オートフィルの利用)

図解.IF関数を2つの条件で使う手順⑤
図解.IF関数を2つの条件で使う手順⑤

そうすると、80点以上か80点未満かによって【○】と【×】を表示させることが出来ます。

AND関数、OR関数、NOT関数の使い方

次に、IF関数の複数条件を利用するために、AND関数OR関数NOT関数の内容と使い方を紹介します。

すでに熟知されている方は、こちらも見出しも読み飛ばしてください。

AND関数は「AかつB」を調べる

AND関数は「(なお)かつ」を表し、「AかつB」に当てはまる場合は「TRUE」を、そうでない場合は「FALSE」を表示する関数です。

「かつ」は、ある事が一方で成り立つと共に、他の事も成り立つという意味です。

下の例でいうと、円と円が重なる青色の範囲が「Aの条件も成り立つ上に、Bの条件も成り立つ」、つまり「AかつB」の範囲です。

図解.AND関数の範囲
図解.AND関数の範囲

AND関数の構文と引数は以下のとおりで、条件はいくつでも追加することが出来ます。

=AND(条件1,条件2,条件3…)

AND関数を使った具体例を一つ紹介します。

下のように、AND関数を用いて、数値が「0以上かつ100以下」の場合に当てはまるかどうかを判定します。

=AND(B3>=0,B3<=100)

AND関数を用いた具体例
AND関数を用いた具体例

OR関数は「AまたはB」を調べる

OR関数は「または」を表し、「AまたはB」に当てはまる場合は「TRUE」を、そうでない場合は「FALSE」を表示する関数です。

「または」は、ある事が一方で成り立つ、もしくは、他の事が成り立つという意味です。

下の例でいうと、円Aと円Bの範囲すべてが「Aの条件が成り立つか、またはBの条件が成り立つ」、つまり「AまたはB」の範囲です。

図解.OR関数の範囲
図解.OR関数の範囲

OR関数の構文と引数は以下のとおりで、条件はいくつでも追加することが出来ます。

=OR(条件1,条件2,条件3…)

OR関数を使った具体例を一つ紹介します。

下のように、OR関数を用いて、数値が「0未満または100より上」の場合に当てはまるかどうかを判定します。

=OR(B3<0,B3>100)

OR関数を用いた具体例
OR関数を用いた具体例

NOT関数は「~以外」を調べる

NOT関数は「以外」「~ではない」を表し、「A以外」に当てはまる場合は「TRUE」を、そうでない場合は「FALSE」を表示する関数です。

「以外」は、ある事が成り立つ以外、いう意味です。

下の例でいうと、円A以外の水色の範囲が「Aの条件以外」です。

図解.NOT関数の範囲
図解.NOT関数の範囲

NOT関数の構文と引数は以下のとおりです。

NOT(論理式)

NOT関数を使った具体例を一つ紹介します。

下のように、NOT関数を用いて、数値が「0未満以外」に当てはまるかどうかを判定します。

=NOT(B3<0)

NOT関数を用いた具体例
NOT関数を用いた具体例

AND関数、OR関数、NOT関数の簡単な使い方の説明は以上です。

次の見出しからは、IF関数とこれらの関数を組み合わせたIF関数の複数条件の使い方を紹介します。

IF関数とAND関数を組み合わせた実例

それでは、IF関数とAND関数を組み合わせた実例を2つ紹介します。

1つ目は、数値の大きさを”OK”か”NG”を判定する使い方、2つ目は、〇△×判定する複数条件の使い方です。

2つの条件の使い方(OK、NG判定)

「値が0以上で、かつ100以下の値の場合は”OK”と表示し、それ以外であれば”範囲外”と表示」する方法を紹介します。

下のIF関数のように、IF関数の第1引数にAND関数を入れ子で挿入することで、特定の範囲の値かどうかを判定することができます。

=IF(AND(C3>=0,C3<=100),"OK","範囲外")

IF関数とAND関数を組み合わせて値を判定
IF関数とAND関数を組み合わせて値を判定

3つの複数条件の使い方(〇、△、×判定)

「値が30~60の場合は”△”と表示し、61以上であれば”〇”、それ以外であれば”×”と表示」する複数条件の利用方法を紹介します。

=IF(AND(C3>30,C3<60),"",IF(C3>=60,"","×"))

まず、上のIF関数のように、IF関数の第1引数「論理式」にAND関数を入れ子で挿入して、31~59の値を判定します。

さらにIF関数の第3引数「値が偽の場合」に、もう1つのIF関数を挿入し、60以上か、それ以外の値かを判定させて、”〇”か”×”を判定します。

IF関数とAND関数を組み合わせて複数条件で値を判定
IF関数とAND関数を組み合わせて複数条件で値を判定

IF関数とOR関数を組み合わせた実例

続いて、IF関数とOR関数を組み合わせた実例を2つ紹介します。

1つ目は、数値の大きさを”対象外”か”範囲内”で判定する使い方、2つ目は、〇△×判定する複数条件の使い方です。

2つの条件の使い方(範囲内、対象外の判定)

「値が0未満で、もしくは100より大きい値の場合は対象外”と表示し、それ以外であれば”範囲内”と表示」する方法を紹介します。

下のIF関数のように、IF関数の第1引数にOR関数を入れ子で挿入することで、0未満か、それとも100より大きいかを判定することができます。

=IF(OR(B3<0,B3>100),"対象外","範囲内")

IF関数とOR関数を組み合わせて値を判定
IF関数とOR関数を組み合わせて値を判定

3つの複数条件の使い方(〇、△、×判定)

「値が50~100の場合は”〇”と表示し、0~49の場合は、それ以外であれば”×”と表示」する複数条件の利用方法を紹介します。

=IF(OR(B3<0,B3>100),"×",IF(B3<50,"",""))

まず、上のIF関数のように、IF関数の第1引数「論理式」にOR関数を入れ子で挿入して、0未満か101以上であれば”×”を判定するよう設定します。

さらにIF関数の第3引数「値が偽の場合」に、もう1つのIF関数を挿入し、50未満か、それ以外の値かを判定させて、”〇”か”△”を判定します。

IF関数とOR関数を組み合わせて複数条件で値を判定
IF関数とOR関数を組み合わせて複数条件で値を判定

IF関数とNOT関数を組み合わせた実例

続いて、IF関数とNOT関数を組み合わせた実例を2つ紹介します。

1つ目は、数値の大きさを”対象外”か”範囲内”で判定する使い方、2つ目は、〇△×判定する複数条件の使い方です。

2つの条件の使い方(範囲内、対象外の判定)

「値が0以下であれば”対象外”と表示し、それ以外であれば”範囲内”と表示」する方法を紹介します。

下のIF関数のように、IF関数の第1引数にNOT関数を入れ子で挿入することで、特定の範囲の値かどうかを判定することができます。

=IF(NOT(B3>0),"対象外","範囲内")

IF関数とNOT関数を組み合わせて値を判定
IF関数とNOT関数を組み合わせて値を判定

3つの複数条件の使い方(〇、△、×判定)

「値が50より大きければ”〇”と表示し、0~50の場合は、それ以外であれば”×”と表示」する複数条件の利用方法を紹介します。

=IF(NOT(B3>=0),"×",IF(B3<=50,"",""))

まず、上のIF関数のように、IF関数の第1引数「論理式」にNOT関数を入れ子で挿入して、0未満であれば”×”を判定するよう設定します。

さらにIF関数の第3引数「値が偽の場合」に、もう1つのIF関数を挿入し、50以下か、それ以外の値かを判定させて、”〇”か”△”を判定します。

IF関数とNOT関数を組み合わせて複数条件で値を判定
IF関数とNOT関数を組み合わせて複数条件で値を判定

IF関数とAND関数で4つの複数条件に対応する方法

IF関数とAND関数を使って、値を『◎〇△×』の4つの複数条件で利用することも可能です。

IF関数で4つ以上の複数条件で対応する方法を紹介
IF関数で4つ以上の複数条件で対応する方法を紹介

「30以下であれば”×”」「31~49であれば”△”」「50~79であれば”〇”」「80以上であれば”◎”」を表示するように、以下のIF関数を挿入します。

=IF(AND(B3>30,B3<50),"△",IF(B3<=30,"×",IF(B3<80,"〇","◎")))

IF関数とAND関数で4つの複数条件に対応
IF関数とAND関数で4つの複数条件に対応

IF関数の中にIF関数を入れ子で挿入し、さらに2つ目のIF関数の中に、3つ目のIF関数を挿入することで、条件を分岐させます。

IF関数の複数条件のポイント

1つ目のIF関数 → AND関数を用いて、31以上で、かつ50未満であれば”△”を表示。該当しなければ2つ目のIF関数で判定。

2つ目のIF関数 → 30以下であれば”×”を表示。該当しなければ3つ目のIF関数で判定

3つ目のIF関数 → 80未満であれば”○”、それ以外であれば”◎”を表示

IFS関数(イフス)は複数条件に便利

上で紹介したとおり、IF関数で複数条件で利用しようとすると、IF関数の中にIF関数を挿入するので、数式が複雑になりがちです。

こんな時は、IFS関数(読み方:イフス、イフズ)を使うと便利です。

IF関数に複数の「S」がついた関数名のとおり、複数の条件で表示方法を変更するための関数です。

ただし、Microsoft365やExcel2019以降のバージョンでしか利用できないので、一部のユーザーは利用できません。

IFS関数の構文と引数

IFS関数の構文と引数は以下のとおりです。

=IFS(論理式1, 真の場合1, 論理式2, 真の場合2,論理式3, 真の場合3, ..., )

IFS関数は、1つまたは複数の条件が満たされているかどうかを判定し、最初に条件を満たす場合の値を返します

IFS関数の使い方を紹介

IFS関数で【◎】【○】【△】【×】の4つの複数条件を指定する手順を紹介します。

100点であれば【◎】、80点以上であれば【○】、60点以上であれば【△】、60点未満は【×】が表示されるように、以下のIFS関数を作成します。

=IFS(C3=100,"◎",C3>=80,"〇",C3>=60,"△",C3<60,"×")

IFS関数を用いて4つの複数条件を利用する方法
IFS関数を用いて4つの複数条件を利用する方法

そうすると、点数の大きさによって、【◎】【○】【△】【×】の4つに自動で判定されます。

IFS関数を用いて4つの複数条件で値を判定
IFS関数を用いて4つの複数条件で値を判定

IF関数の関連記事を紹介

IF関数はエクセルの多くの関数の中でも、1,2位を争う超重要関数です。

本記事の最後に、IF関数に関連するその他の記事を紹介しますので、ぜひIF関数の利用の幅を広げて下さい。

IF関数のエラーに対処方法と4つ以上の複数条件の使い方

IF関数の基本的な使い方や、エラーが発生した時の対処方法など、幅広く紹介しています。

また、今回紹介したAND関数、OR関数、NOT関数を使わずに、4つ以上の複数条件に対応する方法も紹介しています。

図解.IF関数を複数条件で利用する方法
図解.IF関数を複数条件で利用する方法

VLOOKUP関数とIF関数を組み合わせた使い方

IF関数とVLOOKUP関数を組み合わせて利用すると、さらにIF関数の用途が広がります。

『VLOOKUP関数とIF関数を組み合わせて利用』することで『抽出値を別の値に変換して表示』する便利な活用方法を解説します。

IF関数とVLOOKUP関数を組み合わせた実例を1つだけ紹介します。

以下のIF×VLOOKUP関数を用いることで、選択した商品番号の販売高が600(千円)以上であれば「〇」、600(千円)未満であれば「×」をG3セルに直接表示させます。

=IF(VLOOKUP(F3,$B$2:$D$10,3,FALSE)>=600,"","×")

VLOOKUPとIF関数を使って販売高で「〇」「×」判定
VLOOKUPとIF関数を使って販売高で「〇」「×」判定

以下のリンクの記事で使い方と手順を詳しく紹介していますので、よかったら参考にしてみてください。

もちろん、HLOOKUP関数とIF関数を組み合わせて利用することでも、『抽出値を別の値に変換して表示』することが出来ます。(以下のリンクを参照)

XLOOKUP関数とIF関数を組み合わせた使い方

XLOOKUP関数は、VLOOKUP関数を新たにバージョンアップさせた後継関数です。

上で紹介したVLOOKUP関数と同様に、『XLOOKUP関数とIF関数を組み合わせて利用』することで『抽出値を別の値に変換して表示』することが出来ます。

ただし、Microsoft365やExcel2021以降のバージョンでしか利用できないので、一部のユーザーは利用できません。

まとめ

IF関数の中にAND関数、OR関数、NOT関数を挿入することで、複数の条件に対応することを紹介しました。

また、IF関数の中にIF関数を挿入することで4つ以上の複数条件も実現することが出来ます。

IF関数の構文が長くなり使いづらさを感じるようであれば、IFS関数も複数条件に対応できる便利な関数ですので、利用を検討してみて下さい。