永发信息网

excel中if函数嵌套错误解答

答案:5  悬赏:10  手机版
解决时间 2021-03-17 12:18
  • 提问者网友:感性作祟
  • 2021-03-16 21:29
假设单元格A10,其中数值变化,引起后一单元格B10数值变化。有如下条件,A10≤20000, B10=0%
20000<A10≤40000 ,B10=2%
40000<A10≤60000, B10=2.2%
60000<A10≤80000 B10=2.4%
80000<A10≤100000, B10=2.6%
100000<A10≤150000, B10=2.8%
150000<A10, B10=3%,
我用这样一个公式:=IF(150000<A10,"3%",IF(100000<A10<=150000,"2.8%",IF(80000<A10<=100000,"2.6",IF(60000<A10<=80000,"2.4",IF(40000<A10<=60000,"2.2%",IF(20000<A10<=40000,"2%",IF(A10<=20000,"0"))))))),最终只有A10数值在小于20000及大于150000万的时候,B10才是正确显示,其他数值,B10都显示FALSE,不知道公式什么地方有问题,请教各位高手,谢谢啦
最佳答案
  • 五星知识达人网友:玩家
  • 2021-03-16 22:31
其实嵌套的IF函数,前面已经判断了大于的情况,潜逃里面就没必要再加小于等于的判断了,因为就是判断结果不大于才进入嵌套IF的。而多条件的表示方法也不对,例如:100000<A10<=150000因该表示为:and(a10>100000,a10<=150000)或者(a10>100000)*(A10<=150000)。
所以公式可以写成:
=IF(150000<A10,"3%",IF(100000<A10,"2.8%",IF(80000<A10,"2.6",IF(60000<A10,"2.4",IF(40000<A10,"2.2%",IF(20000<A10,"2%","0"))))))
全部回答
  • 1楼网友:轮獄道
  • 2021-03-17 02:12
我记得条件里 20000<A10≤40000 要写成 AND(A10>2000,A10<=40000)
  • 2楼网友:迟山
  • 2021-03-17 01:24

excel2003版中,公式嵌套超过七层就报错了!

公式可以改为:

=if(g3="","",vlookup(g3,{35,60;40,120;45,225;50,300;55,450;60,630;65,840;70,1080;75,1350;80,1800;85,2145;100,3000},2,)*f3/15)

测试通过!

  • 3楼网友:荒野風
  • 2021-03-17 00:25
=IF(A10<=20000,0%,IF(A10<=40000,2%,IF(A10<=60000,2.2%,IF(A10<=80000,2.4%,IF(A10<=100000,2.6%,IF(A10<=150000,2.8%,3%)))))) 或 =IF(150000<A10,3%,IF(100000<A10,2.8%,IF(80000<A10,2.6%,IF(60000<A10,2.4%,IF(40000<A10,2.2%,IF(20000<A10,2%,0%))))))
  • 4楼网友:青灯有味
  • 2021-03-17 00:11
100000<A10<=150000,这样不能识别 这种情况要分两步,先筛<=15000,再筛>10000 其实你后面<=都不必输的,因为前一项IF已经筛过了 改成 =IF(150000<A10,"3%",IF(100000<A10,"2.8%",IF(80000<A10,"2.6",IF(60000<A10,"2.4",IF(40000<A10,"2.2%",IF(20000<A10,"2%","0")))))) 就可以了
我要举报
如以上回答内容为低俗、色情、不良、暴力、侵权、涉及违法等信息,可以点下面链接进行举报!
点此我要举报以上问答信息
大家都在看
推荐资讯