Microsoft Excel(エクセル)のIFS関数は、IF関数の新関数です。
設定した論理式を複数個設定することで、【真】か【偽】かという判定をおこない、表示させる結果を分岐させることができます。
このIFS関数は、AND関数やOR関数、NOT関数と組み合わせると、より高度な分岐条件を設定することができます。
この記事では、複数条件で利用できるIFS関数を、AND関数やOR関数、NOT関数と組み合わせて利用する方法を事例と合わせてながら紹介します。
IFS関数はIF関数の代わりとして使える超絶便利な関数だから、ぜひ使えるようになってね
IFS関数の基本的な使い方(おさらい)
IFS関数の基本的な使い方をおさらいしましょう。使い方を熟知している方は、下の見出しまで読み飛ばしてください。
IFS関数では、IF関数より引数の設定がシンプルになり、複数条件の設定が容易になった関数です。
IFS 関数は、1 つ以上の条件が満たされているかどうかをチェックして、最初の条件に対応する値を優先して表示します。
IFS関数の構文と引数は以下のとおりです。
=IFS(論理式1, 真の場合1, 論理式2, 真の場合2,論理式3, 真の場合3, ..., )
「論理式1」に当てはまる場合は「真の場合1」を表示します。
次に「論理式2」に当てはまる場合は「真の場合2」を表示します。次に「論理式3」に当てはまる場合は「真の場合3」を表示する・・・といった関数の仕組みです。(最大127個の条件設定が可能)
下の図がIFS関数の分岐のイメージ図です。
論理式1に当てはまる場合は「◎」、論理式2に当てはまる場合は「〇」、論理式3に当てはまる場合は「△」、どれにも当てはまらない場合は「×」と、論理式にあわせて表示内容を分岐できます。
IFS関数でどれにも当てはまらない場合を設定する方法は、最後の引数「論理式」を「TRUE」と設定し、最後の「真の値」に、論理式に当てはまらない場合に表示したい文字を設定します。(下の例:TRUE,”×”)
この「TRUE」の入力は、IF関数には無かった新ルールですので、必ず覚えるようにしましょう。
説明が長くなりましたが、IFS関数の基本的な事例を1つ紹介します。
下の表のD列に以下のIFS関数を挿入し、「80点以上であれば”〇”」「40点以上であれば”△”」「それ以外は”△”」を表示しています。
=IFS(C3>=80,"〇",C3>=40,"△",TRUE,"×")
AND関数とOR関数とNOT関数の使い方
次に、IFS関数と組み合わせて使用する、AND関数、OR関数、NOT関数の機能と使い方を紹介します。
すでに熟知されている方は、こちらも見出しも読み飛ばしてください。
AND関数は「なおかつ」を調べる
AND関数は「(なお)かつ」を表し、論理式に当てはまる場合は「TRUE」を、そうでない場合は「FALSE」を表示する関数です。
「(なお)かつ」は、ある事象が成り立つと共に、他の事象も成り立つという意味です。
下の例でいうと、円と円が重なる青色の範囲が「Aの条件も成り立つ上に、Bの条件も成り立つ」、つまり「AかつB」の範囲です。
AND関数の構文と引数は以下のとおりで、条件はいくつでも追加することが出来ます。
=AND(条件1,条件2,条件3,…)
AND関数を使った事例を一つ紹介します。
下のように、AND関数を用いて、数値が「0以上かつ100以下」の場合に当てはまるかどうかを判定します。
=AND(B3>=0,B3<=100)
OR関数は「または」「もしくは」を調べる
OR関数は「または」「もしくは」を表し、ある事象と別の事象がともに当てはまる場合は「TRUE」を、そうでない場合は「FALSE」を表示する関数です。
下の例でいうと、円Aと円Bの範囲すべてが「Aの条件が成り立つか、またはBの条件が成り立つ」、つまり「AまたはB」の範囲です。
OR関数の構文と引数は以下のとおりで、条件はいくつでも追加することが出来ます。
=OR(条件1,条件2,条件3,…)
OR関数を使った事例を一つ紹介します。
下のように、OR関数を用いて、数値が「0未満または100より上」の場合に当てはまるかどうかを判定します。
=OR(B3<0,B3>100)
NOT関数は「~以外」「~でない場合」を調べる
NOT関数は「以外」「~ではない」を表し、指定したした論理式にに当てはまる場合は「TRUE」を、そうでない場合は「FALSE」を表示する関数です。
「以外」は、ある事象や条件が成り立つ以外、という意味です。
下の例でいうと、円A以外の水色の範囲が「Aの条件以外」です。
NOT関数の構文と引数は以下のとおりです。
=NOT(論理式)
NOT関数を使った事例を一つ紹介します。
下のように、NOT関数を用いて、数値が「0未満以外」に当てはまるかどうかを判定します。
=NOT(B3<0)
NOT関数を使った事例は以下の記事でも紹介しています。詳しく知りたい方は合わせて参考にしてください。
AND関数、OR関数、NOT関数の基本的な使い方の説明は以上です。
次の見出しからは、IFS関数とこれらの関数を組み合わせた使い方を紹介します。
IFS関数とAND関数を組み合わせた事例
それでは、IFS関数とAND関数を組み合わせた事例を3つ紹介します。
1つ目は、数値の大きさを”OK”か”NG”を判定する使い方、2つ目は、〇△×判定する複数条件の使い方、3つ目は、◎〇△×判定する複数条件の使い方です。
IFS関数とAND関数の使い方(2つの条件)
IFS関数とAND関数を使って、「値が0以上で、かつ100以下の値の場合は”OK”と表示し、それ以外は”範囲外”と表示」する方法を紹介します。
下のIFS関数のように、第1引数にAND関数を入れ子で挿入することで、特定の範囲内の値かどうかを判定することができます。
=IFS(AND(C5>=0,C5<=100),"OK",TRUE,"範囲外")
このように2つの条件であれば、IF関数でも「=IF(AND(C3>=0,C3<=100),"OK","範囲外")」と入力することで同じ結果を表示することができます。
IFS関数とAND関数の使い方(3つの複数条件)
IFS関数とAND関数を使って、「値が30~60の場合は”△”と表示し、61以上であれば”〇”、それ以外であれば”×”と表示」する3つの複数条件の利用方法を紹介します。
=IFS(AND(C3>30,C3<60),"△",C3>=60,"〇",TRUE,"×")
まず、上のIFS関数のように、IF関数の第1引数「論理式」にAND関数を入れ子で挿入して、31~59の値を判定し、「△」を表示させます。
さらにIFS関数の第2条件で「C3>=60,"〇"」、第3条件で「TRUE,"×"」を設定し、60以上か、それ以外の値かを判定させて、”〇”か”×”を判定します。
IFS関数とAND関数の使い方(4つの複数条件)
IFS関数とAND関数を使って、「値が40未満の場合は”×”、40以上60未満は”△”、60以上80未満は”〇”、80以上であれば”◎”と表示」する4つの複数条件の利用方法を紹介します。
IFS関数の4つの条件を以下のように設定します。
IFS関数の作り方
第1条件:60以上80未満であれば”〇”を表示 ⇒ AND関数を利用
第2条件:80以上で”◎”を表示 ⇒ C3>=80,"◎"
第3条件:40未満で”×”を表示 ⇒ C3<40,"×"
第4条件:それ以外(=40以上60未満)であれば”△”を表示 ⇒ TRUE,"△"
上記に合わせて、IFS関数の書式と引数を作成すると以下のようになります。
=IFS(AND(C3>=60,C3<80),"〇",C3>=80,"◎",C3<40,"×",TRUE,"△")
以上により、下の表のD列にIFS関数を挿入することで、C列の数値の大きさを判定して◎○△×を表示させることができます。
上の例では、AND関数をIFS関数の第1引数に設定しましたが、第3,5引数に挿入して数式を完成させることも可能です。
IFS関数とOR関数を組み合わせた事例
続いて、IFS関数とOR関数を組み合わせた事例を3つ紹介します。
1つ目は、数値の大きさを”OK”か”NG”を判定する使い方、2つ目は、〇△×判定する複数条件の使い方、3つ目は、◎〇△×判定する複数条件の使い方です。
IFS関数とOR関数の使い方(2つの条件)
IFS関数とOR関数を使って、「値が0未満、もしくは100より大きい値の場合は対象外”と表示し、それ以外であれば”範囲内”と表示」する方法を紹介します。
下のIFS関数のように、IF関数の第1引数にOR関数を入れ子で挿入することで、0未満か、それとも100より大きいかを判定することができます。
=IFS(OR(B3<0,B3>100),"対象外",TRUE,"範囲内")
IFS関数とOR関数の使い方(3つの複数条件)
IFS関数とOR関数を使って、「値が50~100の場合は”〇”と表示し、0~49の場合は”△”、それ以外であれば”×”と表示」する3つの複数条件の利用方法を紹介します。
=IFS(OR(B3<0,B3>100),"×",B3<50,"△",TRUE,"〇")
まず、上のIFS関数のように、IFS関数の第1引数「論理式」にOR関数を入れ子で挿入して、0未満か101以上であれば”×”を判定するよう設定します。
さらにIFS関数の第2条件で50未満かどうか、第3条件でそれ以外かを判定し、”〇”か”△”を表示させます。
IFS関数とOR関数の使い方(4つの複数条件)
IFS関数とOR関数を使って、「値が0未満もしくは101以上の場合は”×”、0以上50未満は”△”、50以上80未満は”〇”、80以上100以下であれば”◎”と表示」する4つの複数条件の利用方法を紹介します。
IFS関数の4つの条件を以下のように設定します。
まずは、OR関数を用いて「0未満もしくは101以上の数値であれば」という条件を設定します。
IFS関数の作り方
第1条件:0未満もしくは100より上であれば”×”を表示 ⇒ OR関数を利用
第2条件:50未満で”△”を表示 ⇒ B3<50,"△"
第3条件:80未満で”○”を表示 ⇒ B3<80,"〇"
第4条件:それ以外(80以上100以下)であれば”◎”を表示 ⇒ TRUE,"◎"
上記に合わせて、IFS関数の書式と引数を設定すると以下のようになります。
=IFS(OR(B3<0,B3>100),"×",B3<50,"△",B3<80,"〇",TRUE,"◎")
以上により、下の表のC列にIFS関数を挿入することで、B列の数値の大きさを判定して◎○△×を表示させることができます。
IFS関数とNOT関数を組み合わせた事例
最後に、IFS関数とNOT関数を組み合わせた事例を3つ紹介します。
1つ目は、数値の大きさを”OK”か”NG”を判定する使い方、2つ目は、〇△×判定する複数条件の使い方、3つ目は、◎〇△×判定する複数条件の使い方です。
IFS関数とNOT関数の使い方(2つの条件)
IFS関数とNOT関数を使って、「値が0以下であれば”対象外”と表示し、それ以外であれば”範囲内”と表示」する方法を紹介します。
下のIFS関数のように、IFS関数の第1引数にNOT関数を入れ子で挿入することで、特定の範囲の値かどうかを判定することができます。
=IFS(NOT(B3>0),"対象外",TRUE,"範囲内")
IFS関数とNOT関数の使い方(3つの複数条件)
IFS関数とNOT関数を使って、「値が51以上の場合は”〇”と表示し、0~50の場合は”△”、それ以外であれば”×”と表示」する3つの複数条件の利用方法を紹介します。
=IFS(NOT(B3>=0),"×",B3<=50,"△",TRUE,"〇")
まず、上のIFS関数のように、IFS関数の第1引数「論理式」にNOT関数を入れ子で挿入して、0以上ではない場合(0未満の場合)であれば”×”を判定するよう設定します。
さらにIFS関数の第2条件で50以下かどうか、第3条件でそれ以外かを判定し、”〇”か”△”を表示させます。
IFS関数とNOT関数の使い方(4つの複数条件)
IFS関数とNOT関数を使って、「値が0未満の場合は”×”、0以上50未満は”△”、50以上80未満は”〇”、80以上であれば”◎”と表示」する4つの複数条件の利用方法を紹介します。
IFS関数の4つの条件を以下のように設定します。
=IFS(NOT(B3>=0),"×",B3<50,"△",B3<80,"〇",TRUE,"◎")
まずは、NOT関数を用いて「0以上でない場合(つまり、0未満)」という条件を設定します。
IFS関数の作り方
第1条件:0未満であれば”×”を表示 ⇒ NOT関数を利用
第2条件:50未満で”△”を表示 ⇒ B3<50,"△"
第3条件:80未満で”○”を表示 ⇒ B3<80,"〇"
第4条件:それ以外(80以上)であれば”◎”を表示 ⇒ TRUE,"◎"
上記に合わせて、IFS関数の書式と引数を設定すると以下のようになります。
以上により、下の表のC列にIFS関数を挿入することで、B列の数値の大きさを判定して◎○△×を表示させることができます。
IF関数とOR関数、AND関数、NOT関数の組み合わせる方法
今回の記事では、IFS関数とAND関数、OR関数、NOT関数の組み合わせ方法を紹介しました。
IFS関数が使えない方などIF関数で複数条件を設定したい方は、以下の記事で方法を紹介していますので参考にしてください。