IF函数公式如何简化? 下面的公式如何简化,请高手赐教!

=IF(OR(Y3<0,Z3<0,),"",IF(OR(Z3=0,Z3=""),IF(Y3<=5%,AB3,IF(Y3<=8%,AB3-1.5%,IF(Y3<=10%,AB3-3%,IF(Y3<=20%,AB3+4%,AB3+5%)))),IF(Z3>0,IF(Y3<=5%,IF(Z3<=10%,AB3+2%,IF(Z3<=20%,AB3+4%,AB3+5%)),IF(Y3>5%,IF(((Y3+Z3)>5%)*((Y3+Z3)<=10%),AB3+2%,IF((Y3+Z3)<=20%,AB3+4%,AB3+5%)))))))
假设有A、B、C、D四个数字,B、C均大于等于零,或为空,

如果B或C小于零,D为空。

第一种情况:
如果C=0或空,则:
如果B<=5%,则D=A;
如果B<=8%,则D=A-1.5%;
如果B<=10%,则D=A-3%;
如果B<=20%,则D=A+4%;
如果B>5%,则D=A+5%;

第二种情况:
如果C>0,且B<=5,则:
如果C<=10%,D=A+2%,
如果C<=20%,D=A+4%,
如果C>20%,D=A+5%,

第三种情况:
如果B>5%,且C>0,则:
如果(B+C)<=10%,D=A+2%;
如果(B+C)<=20%,D=A+4%;
如果(B+C)>20%,D=A+5%;

可以简化。

比如:
IF(Y3<=5%,AB3,IF(Y3<=8%,AB3-1.5%,IF(Y3<=10%,AB3-3%,IF(Y3<=20%,AB3+4%,AB3+5%)))),
可以简化为
lookup(y3,{0,5,8,10,20}/100,{0,-1.5,-3,4,5}/100)+ab3

另外
IF(Y3<=5%,,)已经给出了范围,那么后面的不用再来一个IF(Y3>5%,,)

但是,原公式看着头晕。不如给出实际表格以及处理的要求,看看怎么简化,也许可以不用IF函数。追问

改为替换的部分后,结果错误,当Y3=5%时,应当是D=A,而不是D=A-1.5%

追答

我只是举例来说。不能局部修改。

以A1、B1、C1、D1来说,试一下这个公式对不对:

=IF(OR(C1=0,C1=""),LOOKUP(B1,{0,5,8,10,20}%,{0,-1.5,-3,4,5}%),IF(B1<=5%,LOOKUP(C1,{0,10,20}%,{2,4,5}%),LOOKUP(B1+C1,{0,10,20}%,{2,4,5}%)))+A1

追问

效果不理想,LOOKPUP查找的是>=且<,如此就把需要的结果向前移了一档……

追答

啥叫不理想?行就是行,不行就举例说怎么不对。
“LOOKPUP查找的是>=且<”,难道IF函数不是这样吗?

温馨提示:答案为网友推荐,仅供参考
第1个回答  2012-05-09
=IF(OR(Z3=0,Z3=""),IF(Y3<=5%,AB3,IF(Y3<=8%,AB3-1.5%,IF(Y3<=10%,AB3-3%,IF(Y3<=20%,AB3+4%,AB3+5%)))),IF(Z3>0,IF(Y3<=5%,IF(Z3<=10%,AB3+2%,IF(Z3<=20%,AB3+4%,AB3+5%)),IF(((Y3+Z3)>5%)*((Y3+Z3)<=10%),AB3+2%,IF((Y3+Z3)<=20%,AB3+4%,AB3+5%))))),"")
这么复杂!!
第1个判断条件可以省略(放在最后)
Y3>5%这个也可以省略追问

基本上没简化,且公式输入后说错误……

追答

你的判断条件有这么多,又不清楚你要做什么,很难简化,只能顺着你的思路来改
刚才是多了括号
=IF(OR(Z3=0,Z3=""),IF(Y30,IF(Y35%)*((Y3+Z3)<=10%),AB3+2%,IF((Y3+Z3)<=20%,AB3+4%,AB3+5%))))

第2个回答  2012-05-09
简化不了!
第3个回答  2012-05-09
你这公式想表达什么意思?