Excel中的查找利器,Vlookup函数和Index搭配Match函数的使用介绍

发布时间: 2020-08-15       分类:  Excel

大家好,我又来了。

之前再介绍Xlookup函数的时候,有同学说没有Office 365,不能使用Xlookup函数;还有同学说Vlookup函数难学,Index函数搭配Match函数才是Excel中的查找利器,今天就来介绍Vlookup函数、Index函数搭配Match函数的使用方法。

首先我们看例子,如下图。


上图中我们我们要把左表中同学的成绩填写到又表中,如何实现呢?

实现的方法有好几种,Vlookup函数搭配Match函数、Index搭配Match函数、Xlookup函数等,今天为我们就介绍前面两种。

Vlookup函数

首先看语法规则:

VLOOKUP(lookup_value,table_array,col_index_num,range_lookup)

VLOOKUP(查找的值,要查找的区域,返回数据在查找区域的第几列数,精确匹配/近似匹配)

函数中包含4个参数,分别对应的是要查找的值、要查找的区域、返回数据在查找区域的第几列数、精确匹配/近似匹配。

再看Vlookup工作原理,VLOOKUP函数的工作原理是按列从上往下找,上图例子中,如果要找小王同学的数学成绩,函数会在姓名栏从上往下找到小王,然后找到数学所在的列(第三列),这样就找到小王同学的数学成绩了。

如下图。

很多同学觉得Vlookup函数难应该就难在这里了,函数第二个参数查找区域第一列一定是第一个参数(查找值)所在的列,第三个参数返回数据所在的列是查找区域为基准的列,例如上图中数学成绩所在的列就是第三列。

弄明白工作原理后我们在右边表中单元格输入公式:

=VLOOKUP(G3,$B$3:$E$7,3,0)

第一个参数是查找值,就是小张;第二个参数查找区域就是成绩表,$B$3:$E$7(姓名列为第一列,添加绝对引用的$符号),第三个参数返回值列为3(姓名列为第一列);最后一个参数0表示精确查找。

然后使用自动填充柄工具填充即可。语文和英语两列也可以使用同样的方法完成。

有同学就会问了,这也没做到全部表格的自动查找啊?能不能做到在一个单元格中输入公式,剩余的单元格就可以自动填充完成了。

答案是有的。我们要做的就是把Vlookup公式中的第三个参数数学所在的列(3)使用Match函数来获取。

Match函数

语法规则:

MATCH(Lookup_value,Lookup_array,Match_type)

MATCH(查找值,查找范围,匹配方式)

因此结合上图中的例子,Vlookup公式中的第三个参数数学所在的列(3)就可以用以下公式代替:

=MATCH(H2,$B$2:$E$2,0)

如此我们就用Match函数获得了数学所在列的值。
最后我们进一步修改Vlookup函数+Match函数的公式:

=VLOOKUP($G3,$B$3:$E$7,MATCH(H$2,$B$2:$E$2,0),0)

为查找值添加部分绝对引用的符号使之在自动填充的过程中不会出错。

步骤参考下图。

这样我们就利用Vlookup函数和Match函数完成的成绩的填充。
下面我们再来介绍一下Index函数和Match函数的搭配使用。

Index函数

语法规则:

INDEX(Array,Row_num,Column_num)
INDEX(查找范围,第几行,第几行)

Index函数就是在查找范围里面查找第几行,第几列的数据。
例如上面列子我们要在《三年二班成绩表》里查找小王的数学成绩,我们就需要输入INDEX(B3:E7,2,3),点击确定我们就找到了小王的数学成绩。2代表小王所在的行,3代表数学所在的列。

如下图。

然后通过Match函数代替小王同学数学成绩的INDEX公式里面的第2行、第三列,公式为:

MATCH($G3,$B$3:$B$7,0)  //行公式

MATCH(H$2,$B$2:$E$2,0) //列公式

加入Index函数后公式为:

=INDEX($B$3:$E$7,MATCH($G3,$B$3:$B$7,0),MATCH(H$2,$B$2:$E$2,0))

再使用自动填充柄工具即可完成所有单元格的查找了,具体步骤请看下图。