更新日:、 作成日:

エクセル IF 関数を複数条件に対応する

はじめに

エクセル IF 関数を複数条件に対応する方法を紹介します。

複数条件にはいろいろあります。ここでは次の方法を紹介します。

  • 3 つ以上に分岐する
  • 複数条件の全てを満たしたときに処理をする
  • 複数条件のどれか一つを満たしたときに処理をする
IF 関数の基本的な使い方については「IF 関数」をご覧ください。
条件の数だけ分岐を増やすには「IFS 関数」を使用します。

IF 関数を 3 つ以上に分岐する

IF 関数がどのようなものか簡単に説明すると次のようになります。

=IF(条件, TRUE の処理, FALSE の処理)

1 つの条件で 2 つに分岐できます。引数の「TRUE の処理」や「FALSE の処理」に別の IF 関数を入れ子にすると 3 つ以上の分岐ができます。ここでは「FALSE の処理」を入れ子にする例を紹介します。図にすると次のようになります。

11

次の 3 つの条件を例にして紹介します。

  • 0 より大きい値を「プラス」と表示する。
  • 0 より小さい値を「マイナス」と表示する。
  • それ以外の値 (0) を「ゼロ」と表示する。

「0 より大きい値を「プラス」と表示する」を IF 関数にすると次のようになります。

=IF(B3>0,"プラス"

「0 より小さい値を「マイナス」と表示する」を IF 関数にすると次のようになります。

IF(B3<0,"マイナス"

1 つ目の IF 関数の「FALSE の処理」に、2 つ目の条件の IF 関数を組み合わせます。

=IF(B3>0,"プラス",IF(B3<0,"マイナス"

「それ以外の値 (0) を「ゼロ」と表示する」を 2 つ目の IF 関数の「FALSE の処理」に加えると次のようになります。これで 3 つに分岐できます。

=IF(B3>0,"プラス",IF(B3<0,"マイナス","ゼロ"))
6

ポイントは IF 関数の「TRUE の処理」が 1 つの分岐になります。「FALSE の処理」に次の IF 関数を入れ子にして、その「TRUE の処理」が 2 つ目の分岐、その「FALSE の処理」に次の IF 関数を入れ子にして 3 つ、4 つと IF 関数をつなげて分岐を増やせます。最後の「FALSE の処理」にそれ以外の値を指定します。

IF1(条件1,処理1, IF2(条件2,処理2, IF3(・・・,それ以外の処理)

IFS 関数」を使用すると3 つ以上に分岐する処理を簡単に入力できます。

=IFS(B3>0,"プラス",B3<0,"マイナス",TRUE,"ゼロ")
=IF(B3>0,"プラス",IF(B3<0,"マイナス","ゼロ"))

複数条件の全てを満たしたときに処理をする

値が 80 以上でかつ 100 以下のときに「合格」と表示するように、複数の条件を全て満たしているか判定するには「AND 関数」を使用します。

次のように条件をカンマ区切りにして 3 つでも 4 つでも複数条件に対応できます。

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

セル「B3」の値が 80 以上でかつ 100 以下のときは次のようにします。

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

これを「IF 関数」の条件に指定して、「合格」と表示するには次のようにします。

=IF(AND(B3>=80,B3<=100),"合格","")
7

名前が「エクセル」でバージョンが「2016」で値が 80 以上のときに、「合格」と表示するには次のようにします。

=IF(AND(B3="エクセル",C3=2016,D3>=80),"合格","")
8

複数条件のどれか一つを満たしたときに処理をする

名前が「エクセル」または「ワード」のときに「合格」と表示するように、複数の条件の一つでも満たしているか判定するには「OR 関数」を使用します。

次のように条件をカンマ区切りにして 3 つでも 4 つでも複数条件に対応できます。

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

セル「B3」が「エクセル」または「ワード」のときは次のようにします。

=OR(B3="エクセル",B3="ワード")

これを「IF 関数」の条件に指定して、「合格」と表示するには次のようにします。

=IF(OR(B3="エクセル",B3="ワード"),"合格","")
9

名前が「エクセル」またはバージョンが「2016」または値が 80 以上のときに「合格」と表示するには次のようにします。

=IF(OR(B3="エクセル",C3=2016,D3>=80),"合格","")
10

もっと複雑な条件

AND 関数」と「OR 関数」を組み合わせてもっと複雑な条件を作れます。

次のような 3 つの条件があります。これを全て満たす条件を作ります。

  • 名前が「エクセル」または「ワード」
  • バージョンが「2016」または「2013」
  • 値が「20 ~ 29」

それぞれを関数にすると次のようになります。

=OR(B3="エクセル",B3="ワード")
=OR(C3=2016,C3=2013)
=AND(D3>=20,D3<=29)

これらの条件を「AND 関数」に指定して、複雑な条件が完成します。

=AND(OR(B3="エクセル",B3="ワード"),OR(C3=2016,C3=2013),AND(D3>=20,D3<=29))

すべての条件を満たしたときに「合格」と表示するには次のようにします。

=IF(AND(OR(B3="エクセル",B3="ワード"),OR(C3=2016,C3=2013),AND(D3>=20,D3<=29)),"合格","")
12

1 つの数式ですべてをやろうとすると、長くなり何をやっているのかわかりずらくなります。判定用のセルを用意してそこに条件の結果を出してやれば見やすくなります。