2014-12-05 801 views
2

我有范围有2个可能的结果以下在表“SKU DATA”的细胞J2 VLOOKUP式...查找第二VLOOKUP值

=VLOOKUP(A2,DUPLICATE!C:AJ,34,0) 

但是,在“DUPLICATE”片34柱(只会有最多2个结果)。

Vlookup显示第一个结果......是否有一个公式,我可以在单元格J3中使用它来显示第二个结果?

我看了几个匹配,索引和小函数,但是,不能得到任何工作?

感谢

回答

4

我敢肯定有很多方法可以做到这一点(这可能不是最有效的),但首先想到的是要找到在C列的第一场比赛你复制工作表,然后从那里启动您的VLOOKUP()。

这将如下所示:

=VLOOKUP(A2,OFFSET(DUPLICATE!$C$1,MATCH(A2,DUPLICATE!C:C,0),0,1000,34),34,0) 

本质:

  1. MATCH()功能将匹配第一次出现,并返回该行号
  2. OFFSET()然后创造了一系列基准开始在列C,但在匹配之后1行,1000行深和34列宽
  3. 然后你做你r在该范围内的查找

这将返回第二个参考。

希望有道理/做诡计!

+0

嗨,您的快速反应非常感谢......我想你的配方,完美的作品! – SMORF 2014-12-05 16:04:29

+0

很高兴它做到了! :) – 2014-12-05 16:10:21

1

下面是一个使用数组公式(CTRL+SHIFT+ENTERCSE - 确保你看到{})我的回答:

我喜欢这种方法,因为你可以在第二改为最后一个数字,以匹配任何发生,你正在寻找。例如,如果您想要第三次匹配,请将2更改为3

=INDEX($B$2:$B$13,SMALL(IF($A$2:$A$13=D2,ROW($A$2:$A$13)-ROW($A$2)+1,ROW($A$13)+1),2),0) 

得更明白:

=INDEX(DesiredValues,SMALL(IF(PossibleMatches=MyMatch,ROW(PossibleMatches)-Row(FirstRow)+1,ROW(LastRow)+1),nth_match),thisColumn) 

在实践中:

enter image description here