【エクセル】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関数の仕組みをフロー図で表すと以下のようになります。

ひし形が論理式の分岐点となっていて、論理式の条件に合っていれば(値が真の場合)の【結果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つ目は、〇△×判定する複数条件の使い方です。

IF関数とAND関数の使い方(2つの条件)

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

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

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

IF関数とAND関数を組み合わせて値を判定
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つ目は、〇△×判定する複数条件の使い方です。

IF関数とOR関数の使い方(2つの条件)

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

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

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

IF関数とOR関数を組み合わせて値を判定
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つ目は、〇△×判定する複数条件の使い方です。

IF関数とNOT関数の使い方(2つの条件)

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

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

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

IF関数とNOT関数を組み合わせて値を判定
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(論理式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関数の中にAND関数、OR関数、NOT関数を挿入することで、複数の条件に対応することを紹介しました。

IF関数は、AND関数、OR関数、NOT関数と相性が良く、一緒に使うと非常に役立ちます。

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

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

-Excel(エクセル), 数式・関数
-,