如何使用VLOOKUP将值返回到表数组的左侧?

我需要帮助search列E的值= 1,并返回列A的值为同一行。 VLOOKUP不工作,因为有很多列正在search,并有几个1的查找,我似乎无法search使用VLOOKUP只有1列。 这是我的电子表格的外观

ABCDE 1 Name Weight WeightRank Height HeightRank 2 Mike 170 3 6.3 2 3 Richard 200 1 6.0 3 4 Charles 185 2 7.0 1 

所以我想search列E的值= 1,并返回列A中相应的值,在这个例子中,这将search“HeightRank”为“值= 1”,并返回“查尔斯”

我尝试使用=VLOOKUP(1,E:E,1)但返回一个错误。 我尝试使用=VLOOKUP(1,A1:E3,1)但返回一个错误。

INDEX(A:A,MATCH(1,E:E,0))

VLOOKUP在这里不起作用 – 它总是在表格的第一列进行search,并向右返回给定数量的列的值。

INDEX / MATCH组合更为灵活,让您只需select所需的两列即可。 阅读起来也比较容易(你不必计算列的数量),如果你插入或者删除VLOOKUP所使用的列之间的列,它也不会中断。 如果使用跟踪公式特征,则VLOOKUP也会错误地暗示其间的所有列都是结果公式的先例。 (你能说我不像VLOOKUP吗?我只是总是使用INDEX / MATCH,而且我的生活更容易。)

OFFSET解决scheme的工作原理,但它是不稳定的,所以如果许多单元格取决于公式的结果,你会真正陷入工作表。

MATCH(x,E2:E4,0)返回范围E2:E4x的相对位置。 例如, MATCH(1,E2:E4,0)返回3,因为1是范围E2:E4中的第三个单元格的值。

OFFSET(A2,r,c)A2返回单元格r行和c列。

因此,你可以说=OFFSET(A2,MATCH(1,E2:E4,0)-1,0)返回与列E中包含1的单元格对应的列A的值。