excel 选择问题,谢谢!

来源:百度知道 编辑:UC知道 时间:2024/06/30 07:22:17
=IF(B2<=10000,"50",IF(100000>=B2>10000,(B2-10000)*0.025+50,IF(200000>=B2>100000,(B2-100000)*0.02+2300,IF(500000>=B2>200000,(B2-200000)*0.015+4300,IF(1000000>=B2>500000,"((B2-500000)*0.01+8800)","")))))

为何我这样做,输入的数只要是大于10000后它都是按着(B2-10000)*0.025+50来算,而大于十万这些就不能计算呢?比如150000,应该是按,(B2-100000)*0.02+2300来算的,但它还是按(B2-10000)*0.025+50,请问如何解决,谢谢了!

问题是你的条件表达式(如100000>=B2>10000)的表达方式不符合要求,
应该改为: and(B2<=100000,B2>10000),

正确公式为:
=IF(B2<=10000,50,IF(AND(B2<=100000,B2>10000),(B2-10000)*0.025+50,IF(AND(B2<=200000,B2>100000),(B2-100000)*0.02+2300,IF(AND(B2<=500000,B2>200000),(B2-200000)*0.015+4300,IF(AND(B2<=1000000,B2>500000),((B2-500000)*0.01+8800),"")))))

你可以用"公式求值"的步入及步出功能查看每一步的计算结果.

EXCEL的IF中的条件不可以写成100000>=B2>10000这样,要指明这种条件应该写AND(100000>=B2,B2>10000)
因为EXCEL只识别B2<=10000这个条件,而无法识别你写的其它条件,所以大于10000时全都以(B2-10000)*0.025+50来算

将判断顺序倒过来写.