複数の条件式の結果によって出す答えを変える
以前、SWITCH関数という関数で条件の結果によって答えを出す方法を紹介しました。
SWITCH関数で出来るのは、1つの条件式に対して、どんな答えが出るかを分岐する方法です。
複数の条件式に対して優先順位を付けて分岐することは出来ません。
複数の条件式に対して優先順位を付けて評価をし違う答えを出す場合には、今回紹介するIFS関数を利用します。
サンプル
例えばこんな感じです。
B列の得点によって、C列の入力する評価を変えたい場合です。
E列F列のような、評価の基準を設定します。
それでは早速やっていきましょう。
IFS関数
- 論理式…TRUEまたはFALSEの結果を返す条件式を指定します。
- 値…「論理式」がTRUEの場合に返す値や式を指定します。
前に書いている条件の方が優先順位が高く評価されます。TRUEが返る式があった場合は、その後の論理式は評価されません。最大127組の論理式と値のペアが指定出来ます。
どの条件も成立しないときの値を設定するには、最後の論理式を「TRUE」として、その場合の値を指定することで実現出来ます。
この構文に沿って、C2セルに次の数式を入力します。
=IFS(B2>=1000, “A評価”, B2>=750, “B評価”, B2>=500, “C評価”, TRUE, “不合格”)
Aさんの得点は1157点なので、A評価であっていますね。
C10セルまでコピーします。
このような形で、B列の得点の評価によって答えを分岐することが出来ます。
簡単ですね(^o^)
ちなみに、こいつはIF関数でも書けます。
=IF(B2>=1000, “A評価”, IF(B2>=750, “B評価”, IF(B2>=500, “C評価”, “不合格”)))
このようになりますが、IF関数をネスト(入れ子に)して書く必要があるので、括弧もいっぱい出てきて分かりにくいですね(;_;)
IFS関数を使うことで、数式をシンプルに分りやすく書くことが出来ます。
コメント