Excel IF函数和值之间,但仅限于

时间:2016-03-06 01:54:35

标签: if-statement excel-formula

我有邮资,定价和邮资服务的价值(仅限于此)。我有两种邮政服务选择(快递和生态),价格取决于重量,但服务取决于价格(超过5英镑的物品快速服务,生态 - 低于)。

服务:如果产品价格(A2)

   <5=eco; >5=express

按重量计的服务价格(C2)(B2):

  <=1000gr= £2 eco or £3 express
  1001-1250gr= £5 eco or £6 express
  1251-5000gr=£9 eco or £11 express

单元格A2和B2始终显示一个值,需要C2的公式才能显示按重量计算的服务价格,但是如果超过5英镑的项目必须显示快递服务价格(如果较少) - eco。

我试过了:

>IF(AND(OR(B2<=1000),A2<5),2,IF(AND(OR(B2>1000,B2<=1250),A2<5),5,IF(AND(OR(B2>1250,B2<=5000),A2<5),9)))            
>IF(AND(OR(B2<=1000),A2<5),2)+IF(AND(OR(B2>=1001,B2<=1250),A2<5),5)+IF(AND(OR(B2>2000),A2<5),9)            

没有开始添加A2>5,因为无论如何都没有用!尝试了很多,但没有运气。

会感谢任何帮助,因为卡住和用完了选项:( 谢谢!

1 个答案:

答案 0 :(得分:0)

有几种方法可以实现这一目标。首选方法是为附加费构建一个小的交叉引用表,并使用VLOOKUP function返回值。

但是,这个问题是关于条件语句中的硬编码值,所以我将使用LOOKUP function和数组常量来解决这个问题。

C2中的标准公式是

=LOOKUP(B2,{0,1001,1251},{2,5,9})+SIGN(A2)*LOOKUP(B2,{0,1001,1251},{1,1,2})

根据需要填写。

在下图中,自定义数字格式用于A列和B列([Color9]\Exp\r\e\s\s - [$£-809]#,##0.00;;[Color10]\Eco - [$£-809]#,##0.00;0\g\r_))。 B列中的权重&gt; 5000会在C列中触发显示太重的条件格式。

lookup_mail