エクセルIF関数でネスト(入れ子)して複数条件を指定する方法

エクセルIF関数ではネストして、複数条件を指定することができます。もし~だったらA、もし~だったらBと、3つ以上、とはいはず5つ以上入れ子ができます。それは、エクセル2007以降から、最大64個のIF関数を入れ子にすることができるようになったからです。複数の条件を指定して、より複雑な判定ができるようになりました。ここでは、IF関数の複数条件に、文字列と比較演算子を使って、使い方を分かりやすく説明しています。

 

 

IF関数

エクセルIF関数は、条件式の結果が真の場合は真の場合の値を返し、偽の場合は偽の場合の値を返す関数です。基本的な使い方は1つの条件式ですが、エクセルIF関数は複数条件を指定して使うことができます。エクセル2003までは7個まででしたが、エクセル2007以降は64個までネストできるようになりました。

IF関数の書式と引数

IF(論理式,真の場合,偽の場合)

論理式条件式を指定します。
真の場合論理式がTRUEの場合に返す値を指定します。
偽の場合論理式がFALSEの場合に返す値を指定します。省略するとFALSEを返します。

 

 

IF関数に複数条件を指定する(文字列)

IF関数に複数条件を指定する基本的な使い方です。文字列には「”」(ダブルクォーテーション)で囲みます。

参加がB列に「○」「×」「△」で入力されています。C列に「○」だったら「参加」、「×」だったら「不参加」、「△」だったら「未定」を入力してみましょう。

 

C2に、IF関数の条件式を入力します。

C2 =IF(B2=”○”,”参加”,IF(B2=”×”,”不参加”,”未定”))

C2には、「参加」が入力されました。

C2の式を下にドラッグしましょう。

すると「○」は「参加」、「×」は「不参加」、「△」は「未定」が返されました!

 

 

IF関数に複数条件を指定する(比較演算子)

契約者の年齢は、広範囲でバラバラです。年齢層でまとめて、表示する文字列をIF関数で指定してみましょう。

 

年齢層で表示させる文字列

年齢表示
30未満20
30<=A<4030
40<=A<5040
50<=A<6050
60以上60

 

IF関数に比較演算子を使って、複数条件を指定し、年齢層を表示させます。

 

C2に、式を入力しましょう。

C2 =IF(B2<30,20,IF(B2<40,30,IF(B2<50,40,IF(B2<60,50,60))))

C2の式は、「B2<30,20」で30未満だったら「20」、次の入れ子で「B2<40」を指定すると条件式は「30以上40未満」となります。

以上、3つ目、4つ目と入れ子を入れていくことで「B2<50」は「40以上50未満」、「B2<60」は「50以上60未満」となります。それ以外は「60」が表示されます。

複雑な式に見えますが、理屈を覚えると簡単に作成できるようになります。

C2の式を、下にドラッグしましょう。

バラバラだった年齢が、年齢層でまとめられて表示されました!

 

 

IF関数で使用できる演算子

IF関数で使用できる比較演算子です。

比較演算子説明使用例
=等しいA=B
>より大きいA>B
<より小さいA<B
>=以上A>=B
<=未満A<=B
<>等しくないA<>B

IF関数にAND関数またはOR関数を組み合わせて使う

エクセルIF関数に複数条件を指定することで、より複雑な条件の判定をすることができますが、複数条件には、AND関数またはOR関数を組み合わせて使う方法もあります。

AかつB、AまたはBの場合の判定は、AND関数またはOR関数との組み合わせになります。IF関数にAND関数、OR関数を組み合わせて使うことはよくあります。ぜひ、この機会に覚えましょう。

こちらの記事もご覧ください。⇒エクセルIF関数で複数条件!OR関数、AND関数と組み合わせて使う