关于excel的if函数嵌套问题!

来源:百度知道 编辑:UC知道 时间:2024/05/14 15:39:05
在做一个关于计算工资的表格,如下:=IF(b5="","-",IF(W5="-",IF(12*(YEAR(A2)-YEAR(V5))+MONTH(A2)-MONTH(V5)<0,IF(12*(YEAR(A2)-YEAR(D5))+MONTH(A2)-MONTH(D5)>0,(E5+F5)*0.8,(E5+F5)*0.8/30*(IF(DAY(D5)=1,30,IF(DAY(D5)=DAY(DATE(YEAR(D5),MONTH(D5)+1,0)),1,30-DAY(D5)+1)))),IF(12*(YEAR(A2)-YEAR(V5))+MONTH(A2)-MONTH(V5)>0,(E5+F5),(E5+F5)*0.8/30*IF(AND(MONTH(V5)=2,DAY(V5)>=28),30,DAY(V5)-1)+(E5+F5)/30*(30- IF(AND(MONTH(V5)=2,DAY(V5)>=28),30,DAY(V5)-1)))),IF(12*(YEAR(W5)-YEAR(V5))+MONTH(W5)-MONTH(V5)>0,IF(DAY(W5)=DAY(DATE(YEAR(W5),MONTH(W5)+1,0)),E5+F5,(E5+F5)/30*DAY(W5)),(E5+F5)*0.8/30*(DAY(V5)-1)+(E5+F5)/30*(IF(DAY(W5)=DAY(DATE(YEAR(W5),MONTH(W5)+1,0)),30,DAY(W5)-DAY(V5)+1)))))

excel提示上面的公式有误。但如果我把最外层的IF(b5="","-", )删掉的话,就没问题了。所以可能是嵌套if函数过多。
哪位专家能帮我想想办法,让这个公式可以被excel认可?
谢谢了

其实很简单

比如说你这个公式写在Z5单元格的话
那你在Z5单元格的公式就把最外层的IF(b5="","-", )删掉
然后在Z5单元格的下一列也就是AA5单元格内输入=IF(b5="","-",z5)
这样就达到要求了,如果不好看,那就可以把Z5这一列隐藏起来就行了
IF语句只能支持最多7层嵌套,分二个单元格就可以解决了

你的函数镶嵌超过7层就不行了!(IF函数的特性)
不行的话上传个例子给你分析一下!

公式太长,思路不行,你干脆说出你需要达到的效果,让咱帮忙想个思路,有时候,同样一个效果,有多种方式可以达到,并不一定要这么复杂的.

举个例子来吧兄弟