Excel中的复杂查找

时间:2014-03-28 12:03:31

标签: excel lookup

我有一个工作表,其中包含参数列表'参数':

A            | B            | C          | D        | E          |
Manufacturer | Item Type    | Price From | Price To | Percentage |
Apple        | Mobile Phone | 0.00       | 99.99    | 50%        |
Apple        | Mobile Phone | 100.00     | 149.99   | 45%        |
Apple        | Tablet       | 0.00       | 99.99    | 65%        |

我有另一张工作表,其中包含零售商品清单'零售库存':

A            | B            | C              | D            |
Manufacturer | Item Type    | Purchase Price | Retail Price |
Apple        | Mobile Phone | 80.00          | ?            |
Apple        | Mobile Phone | 120.00         | ?            |
Apple        | Tablet       | 95.00          | ?            |

我需要在零售库存的D栏中做些什么?工作表,我需要从参数工作表中提取相关的百分比,以计算零售价。

要查找我需要在参数工作表上查找,传递制造商,项目类型和购买价格的百分比。

请有人可以就此提出建议, 我感谢我的问题可能需要更多填充才能得到正确的答案,所以如果您需要更多信息,请询问。

2 个答案:

答案 0 :(得分:2)

您可以使用SUMIFS

=SUMIFS(Parameters!E:E,Parameters!A:A,A2,Parameters!B:B,B2,Parameters!C:C,"<="&C2,Parameters!D:D,">="&C2)

我认为价格不会有重叠,因为这对我来说没什么意义,所以上面应该给你适当的百分比。

适当的格式。

注意:如果没有匹配,则该函数将返回0


SUMIFS将从参数列E中获取总和,前提是:

  • A列等于A2,
  • B列等于B2,
  • C列低于C2,
  • D列高于C2

答案 1 :(得分:1)

  

这里只会有一个匹配,参数不会重叠

试试这个:

=SUMPRODUCT((Parameters!$A$2:$A$100=A2)*
            (Parameters!$B$2:$B$100=B2)*
            (C2>=Parameters!$C$2:$C$100)*
            (C2<=Parameters!$D$2:$D$100)*
            (Parameters!$E$2:$E$100)
           )

对于非匹配行公式,返回0