Excel中IF函数中的条件写法

excel在办公中运用的比较多,但是用函数,特别是IF函数那是特别的少。接到一个任务,需要输出毛利率,已知的列有 进货价和毛重。需要根据不同价格区间 不同重量算出不同的毛利率。具体如下表:

进货价重量与毛利率的关系
重量小于等于重量的毛利率大于重量的毛利率
X <=15050020%19%
150 < X =<20080018%17%
200 < X =<25090016%15%
250 < X =<700100014%13%
700 < X =<950110012%11%
950 < X =<1023120010%9%
1023 < X =<1920130010%8%
1920 < X =<236614008%7%
2366 < X =<350015007%4%
3500 < X =<500016006%4%
5000 < X =<580016005%4%
5800 < X不校验4%
拿到就霹雳吧啦的写下了一段IF函数

=IF(A2<=150,IF(B2<=500,0.2,0.19),
(IF(150<A2<200,IF(B2<800,0.18,0.17),(
IF(200<A2<=250,IF(B2<900,0.16,0.15),(
IF(250<A2<700,IF(B2<1000,0.14,0.13),(
IF(700<A2<950,IF(B2<1100,0.12,0.11),(
IF(950<A2<1023,IF(B2<1200,0.10,0.09),(
IF(1023<A2<1920,IF(B2<1300,0.10,0.08),(
IF(1920<A2<2366,IF(B2<1400,0.08,0.07),(
IF(2366<A2<3500,IF(B2<1500,0.07,0.04),(
IF(3500<A2<5000,IF(B2<1600,0.06,0.04),(
IF(5000<A2<5800,IF(B2<1600,0.05,0.04),0.04)))))))))))))))))))))

算出来的结果傻眼了。怎么价格大于150的毛利率都是0.04呢???

深思一下原因,原来IF中的条件不能采用 5000<A2<5800 这种格式,正确的格式是"=AND(A2>50,A2<=500)"

或者把上述的IF改写为:

=IF(A2<=150,IF(B2<=500,0.2,0.19),
(IF(A2<200,IF(B2<800,0.18,0.17),(
IF(A2<=250,IF(B2<900,0.16,0.15),(
IF(A2<700,IF(B2<1000,0.14,0.13),(
IF(A2<950,IF(B2<1100,0.12,0.11),(
IF(A2<1023,IF(B2<1200,0.10,0.09),(
IF(A2<1920,IF(B2<1300,0.10,0.08),(
IF(A2<2366,IF(B2<1400,0.08,0.07),(
IF(A2<3500,IF(B2<1500,0.07,0.04),(
IF(A2<5000,IF(B2<1600,0.06,0.04),(
IF(A2<5800,IF(B2<1600,0.05,0.04),0.04)))))))))))))))))))))

也是可以的。

  • 0
    点赞
  • 3
    收藏
    觉得还不错? 一键收藏
  • 1
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值