Excel在数组中查找值,返回下一个值

我想查找一个范围内的值,并返回下一行的值,但不能完全弄清楚如何做到这一点。 我特别想用公式而不是VBA来做到这一点,并且由于macros安全问题,最好使用内置公式而不是自定义(VBA)公式。

我正在使用Excel 2010.我的工作簿有两个工作表,“评估”和“查找”。 在查找中,我有查找表。

“lookup”看起来像这样:

Column A Column B Column C 1 Sales Engineering Manufacturing 2 Alice Bobbie Charlie 3 Dawn Edgar Frank 4 George Holly Isabel 

在“评估”中,我有一些下拉式的用户从“查找”中select每个列中的一个名字。 基于其他一些标准,然后我sorting这些并创build一个新的sorting列表(使用INDEX()MATCH() ),产生选定的名称和相应的列名称一个新的sorting顺序

  Column A Column B 10 Engineering Edgar 11 Sales Alice 

我想要的是从下一行返回名称。

  Column C 10 Holly 11 Dawn 

但我真的很难找出如何到达那里。

假设查找位于B2:D5 (根据需要更改) ,并且结果数据位于F2:H3 (根据需要更改),请在单元格H2input此公式,然后复制下来。

 =INDEX( INDEX($B$2:$D$5,0,MATCH($F2,$B$2:$D$2,0)), 1+MATCH($G2, INDEX($B$2:$D$5,0,MATCH($F2,$B$2:$D$2,0)),0)) 

在这里输入图像说明