为什么这个嵌套的IF语句没有返回我想要的值?
我正在Excel中尝试这个公式。 这个嵌套的IF语句没有返回我想要的值。 声明中的单元格可以介于1.000和0.000之间。 如果单元格中的值等于1,则它总是返回一个值“1”,如果它小于1,它总是返回一个值“3”,即使该值为0。 IF声明?
=IF(F5=1,"4", IF(1>F5>=0.9,"3", IF(0.9>F5>=0.75,"2", IF(0.75>F5>=0.55,"1", IF(F5<0.5,"0")))))
要在excel中执行范围,可以使用AND(logical1, [logical2], ...)
IF(AND(XXX>=YYY,XXX<=ZZZ)...
所以你的支票看起来像
IF(AND(F5>=0.9,f5<1)...
我会猜测..你不能在if条件中有1> f5> = 0.9的东西,因为它可能是从左到右,(1> f5 == true),(true> = 0.9 ==真的),所以你总是得到3。
Excel代码True
为1
, False
为0
。 所以1>F5>=0.9
被parsing为(1>F5)>=0.9
。 这成为True >= 0.9
,这与1 >= 0.9
是一样的。
正如epascarello指出的,你可以用AND(F5>=0.9,f5<1)
来正确地创build一个间隔AND(F5>=0.9,f5<1)
。
这是更正的公式。
=IF(F5=1,"4",IF(AND(1>F5,F5>=0.9),"3",IF(AND(0.9>F5,F5>=0.75),"2",IF(AND(0.75>F5,F5>=0.55),"1",IF(F5<0.5,"0","ENTER_A_VALUE_HERE")))))
当在IF语句中执行2个逻辑运算时,使用AND(expression1,expression2,… expression N)格式。
你应该可以看看上面修正的function,看看不同之处。
参考: http : //www.techonthenet.com/excel/formulas/if.php