EXCEL中,关于IF和IFERROR函数,公式计算错误的问题?

请问各位大神,如图所示,当公式设置后,估算的数值2、3都没问题,就是数值1有问题:当估算值预算为空,完成率为0时,评估居然自动生成为1.2,不应该是对应到84%及以下的0吗?是我哪里设置的有问题,还是公式不对呢?备注:E列完成率的公式设置为IFERROR是不想当预算和完成为空时,他产生#DIV/0!的提示,在网上查了后,让用的这个函数。

    因为你公式中的“0%”加引号了,表示文本。

    文本大于所有数值,所以后面的判断成立,返回就是1.2。

    解决方法把0%的双引号去掉,直接写0,用单元格格式表示百分数形式即可。

温馨提示:答案为网友推荐,仅供参考
第1个回答  2020-10-09
条件参数优先级方向反了,E8>=120%,1.2,E8>=110%,1.1,大于110%同时也大于120%,该如果取舍?是返回1.1还是返回1.2
第2个回答  2020-10-09
将=IFERROR(D8/D7,"0%")修改为=IFERROR(D8/D7,0%)或=IFERROR(D8/D7,0)
0%<85%,结果为TRUE;
而文本型0%<85%,结果却为FALSE。
值按升序排列:..., -2, -1, 0, 1, 2, ..., A-Z, FALSE, TRUE。即:TRUE>FALSE>文本>数值。
相似回答