跨Excel工作表的多值查找

时间:2014-10-13 07:25:34

标签: excel excel-formula excel-2007 excel-2010 vlookup

我有一个主工作表和一个Extract工作表。 我想从提取表中提取数据,并在主表中按如下方式显示。

数据如下:

Extract Sheet
--------------------------------------
Fruit    Nutrients    Proportion
Apple    Calcium      10
Apple    Vitamin B    20
Mango    Vitamin A    50
Lemon    Vitamin C    30
Lemon    Vitamin A    10

Master Sheet
--------------------------------------------------------
Fruit    Calcium    Vitamin A    Vitamin B    Vitamin C
Apple    10         0             20           0
Mango    0          50            0            0
Lemon    0          10            0            30

我使用了Excel Array函数SMALL和INDEX但是 我无法在主表中获得比例值。 我一直收到#NUM错误

请帮我一同指导。

提前致谢。

2 个答案:

答案 0 :(得分:1)

我已根据下图将您的示例数据和结果放入单个工作表中,但您应该能够将 Extract 移动到另一个工作表并根据您自己的目的转录该公式。 / p>

enter image description here

F2中的标准公式为=IFERROR(INDEX($C$2:$C$6,MIN(INDEX(ROW($1:$5)+(($A$2:$A$6<>$E2)+($B$2:$B$6<>F$1))*1E+99,,))),0)。必要时向右和向下填充。您提到使用SMALL,但两个条件列中没有重复值,所以我认为这更接近您的要求。如果你确实需要一个SMALL函数,并且 k 选择第一个,第二个等,请回复评论。

答案 1 :(得分:0)

试试这个:

= IFERROR(LOOKUP(2,1 /((&#39;提取&#39;!$ A $ 2:$ A $ 6 = $ A2)*(&#39;提取&#39;!$ B $ 2 :$ B $ 6 = B $ 1)),&#39;提取&#39;!$ C $ 2:$ C $ 6),0)