IT
Excel関数問題集
Q.
`=IF(点数>=80, “A”, IF(点数>=60, “B”, “C”))` に点数75を入れたときの結果はどれか。
ポイント
ネストしたIFは、左から順に条件を評価し、最初に成立した条件に対応する値を返します。途中で条件が成立すれば、それより後ろのIFは評価されません。境界の向き(>= か >)によって含む値が変わる点にも注意しましょう。
ワンポイントアドバイス
段階的な判定をIFのネストで書くときは、上から「厳しい条件→ゆるい条件」の順に並べましょう。さらに、境界値(この例なら60と80)を実際に入れてみて、各段階が正しく切り替わるかを試してください。境目での動作を確認しておくと、ランク付けのずれを防げます。
解説詳細
正解はCの"B"です。点数75は80以上ではないため、最初のIFの条件はFALSEとなり、ネストした2つ目のIFが評価されます。75は60以上なので、こちらの条件はTRUEとなり、"B"が返ります。Aの"A"は点数が80以上のときに返る値です。Dの"C"は60未満のときの値です。Bの「エラー」も誤りで、この数式は構文上正しく、エラーにはなりません。