No.006
3つ以上ある範囲に条件分岐するには(多分岐) 《IF》
2003/2007/2010/2013
IF関数は「真の場合」と「偽の場合」の2分岐ですが、そこを3分岐以上の条件で求める方法です。
IF関数を使った分岐のパターンはいくつもありますが、今回は数値系の条件分岐です。
例えば、点数などの数値データを、例えば30以上の場合はA、20以上30未満はB、20未満はCなどと評価、多分岐するケースです。
数式は、IF関数(関数の分類: 論理)だけを複数使います。
=IF(A1>=30,"A",IF(A1>=20,"B","C"))
式の意味を、頭から見ていきましょう。
最初のIF関数の条件、「セルA1の値が30以上である」の条件に真の場合は「A」と指定、これは決定です。
そして偽の場合、偽の場合ということは30未満のデータが該当します。
その偽の場合の中にIF関数が入っていて、「セルA1の値が20以上である」の条件があります。
とすると、中のIF関数の条件は「セルA1の値が30未満かつ20以上である」という条件となり、その条件に真の場合は「B」、偽の場合、つまり20未満は「C」となります。
このように、IF関数の偽の場合にIF関数をネストし、1つの対象に条件を指定することで、ランクなどの多分岐を行うことができます。
4分岐、5分岐としていく場合は、IF関数の引数[偽の場合]にさらにIF関数をネストさせて処理します。
こういった数値の多分岐を行う場合は、端の条件から指定していきましょう。
今回数値が大きい条件(30以上)から指定していきましたが、小さい条件(20未満)から指定するならば、次の式になります。
=IF(A1<20,"C",IF(A1<30,"B","A"))
なお関数のネストは、Excel2003までのバージョンでは7レベルまで、Excel2007以降は64レベルとなっていますので、十分に分岐することができますね。