[Excel]别以为VLOOKUP只能向右查询

在使用VLOOKUP函数时,需要查询的数值必须位于查询区域的第一列,也就是说,VLOOKUP函数在查询区域执行的是一个由左向右的查询过程。但是如果需要查询的数值位于查询区域的最右列,该怎么办?

案例

查询区域是由三列组成的,分别为 B列等级、C列描述、D列分数

当C9单元格输入一个分数时,会希望在C10单元格使用一个VLOOKUP公式返回一个B列所对应的等级。

 

解决方法

CHOOSE函数

CHOOSE函数除了可以从一个列表中找出一个单一数值外,CHOOSE函数还项特殊的能力——创建数组。

因而在我们的VLOOKUP公式中,可是使用CHOOSE函数创建一个查询区域,第一列为分数、第二列为等级。

CHOOSE({1,2},D3:D7,B3:B7)

其中,

{1,2} 表示要创建一个两列的数组

D3:D7表示第一列所引用的数值

B3:B7表示第二列所引用的数值

重构这么一个数组之后,你不需要在物理上重建一个表格。

VLOOKUP函数向左查询公式

使用上述CHOOSE公式作为查询区域之后,整个VLOOKUP公式成为了这样:

=VLOOKUP(C9,CHOOSE({1,2,D3:D7,B3:B7),2,TRUE)