Excel 包含很多指令可以帮助我们快速处理大量数据,在进行两张表格之间或不同文件的两张表格之间比对查询时有一个很好用的指令——VLOOKUP

VLookup函数由四个参数组成,具体语法规则如下:

VLookup(lookup_value,table_array,col_index_num,range_lookup)

Lookup_value为需要查找的主键。
Table_array为需要在其中查找数据的数据表。
col_index_num为table_array 中查找数据的数据列序号。
Range_lookup为一逻辑值,指明函数 VLOOKUP 查找时是精确匹配,还是近似匹配。

如果在数据表中存在选定的主键,则返回该主键对应第(col_index_num)列中的数据,若不存在,则返回#N/A。

使用场景一:在已有表格中查找数据

lua 不同文件 相同函数 两个不同的文件用vlookup匹配_主键

如图中案例我需要在一张表中查找相同主键(姓名)的性别数据,可以选中操作表中的主键,选择查询表中的范围,选择(第2行)性别,然后精确查找,通过常用的右下角下拉即可实现整列的查询。

为了保证选择的表格固定,须在表格头和尾编号中加上$$冻结方格。

使用场景二:判断查询表中是否存在操作表的主键数据

根据案例一的使用,我们可以更进一步实现另一个功能,判断数据是否存在

思路为通过主键查询获得相关数据,当数据存在时会正常显示,当数据不存在时则显示#N/A,通过筛选则可区分数据的存在与否。

lua 不同文件 相同函数 两个不同的文件用vlookup匹配_主键_02


可以看到在操作表中出现#N/A,只要通过筛选或排序批量删除就可以找到两张表中都有的数据。

使用场景三:不同Excel表格之间的比对查询

更具vlookup函数的使用方法,可以看到他支持不同表格,不同文件之间的操作

lua 不同文件 相同函数 两个不同的文件用vlookup匹配_主键_03


不同于同一张表格之间的指令,在table_array中会多出目标区域所在的表格或文件名称,其他使用方法都相同,记得加上$$冻结区域始末。