MS Excel值范围等效(IF语句)

时间:2012-01-06 13:00:22

标签: excel

我的formula有什么问题?

=if(((F2 >= 97) and (f2 <= 100)), "Excellent", if(((f2 >= 94) and (f2 <= 96)), "Good", "None of the Above"))

我正在创建一个显示等效成绩的工作表。这是范围:

97 - 100  ==>  Excellent
94 -  96  ==>  Good
and so on and so forth...

还是有更好的方法吗?

5 个答案:

答案 0 :(得分:8)

  

还是有更好的方法吗?

您可以使用LOOKUP来缩短公式。您需要指定每个范围的下限,例如

=IF(F2="","",LOOKUP(F2,{0,70,80,90,94,97},{"Poor","Average","Above Average","Below Good","Good","Excellent"}))

.....最好的方式IMO将所有值都放在一个表中,所以使用我的例子你可以列出Y2:Y7中的0,70,80等,以及Z2中的相关文本:Z7然后公式简单

=IF(F2="","",LOOKUP(F2,$Y$2:$Z$7))

这更容易维护,您可以通过更改表格轻松更改断点或文本等,而无需触及公式

答案 1 :(得分:2)

=IF(AND(F2>=97,F2<=100),"Excellent",IF(AND(F2>=94,F2<=96),"Good","None of the Above"))

答案 2 :(得分:0)

我建议这比巴里·胡迪尼(非常聪明!)答案稍微好一点:

=IF(F2="","",INDEX({"Poor","Average","Above Average","Below Good","Good","Excellent"},MATCH(F2,{0,70,80,90,94,97})))

根据我的理解,LOOKUP是一个易变的函数(编辑:事实证明它不是!),这意味着如果您的电子表格中有很多LOOKUP函数,它可以开始变慢。

答案 3 :(得分:0)

  

= IF(F7 = “”, “”,INDEX({ “d”, “C”, “B”, “A”},MATCH(F7,{0,26,51,76,101})))

如果F7单元格中的结果值可能用于范围等级A(76-100标记),B(51-75标记),C(26-50标记),D(0-25标记)

答案 4 :(得分:0)

简化为=IF(A:A>75,"PASS",IF(A:A<75,"FAILED"))等等。