如何用EXCEL里面的VLOOKUP做数据匹配
VLOOKUP是引用类函数,根据查找的内容,返回同行中,不同列中对应的值。
Excel版本参考:2010
1、选中E2单元格;
2、输入公式:=VLOOKUP(D2,A:B,2,0),回车
3、查看效果(修改姓名测试结果正确)
语法及说明:
语法
VLOOKUP(lookup_value, table_array, col_index_num, [range_lookup])
VLOOKUP 函数语法具有下列参数 (参数:为操作、事件、方法、属性、函数或过程提供信息的值。):
lookup_value 必需。要在表格或区域的第一列中搜索的值。lookup_value 参数可以是值或引用。如果为 lookup_value
参数提供的值小于 table_array 参数第一列中的最小值,则 VLOOKUP
将返回错误值 #N/A。
table_array 必需。包含数据的单元格区域。可以使用对区域(例如,A2:D8)或区域名称的引用。table_array 第一列中的值是由 lookup_value 搜索的值。这些值可以是文本、数字或逻辑值。文本不区分大小写。
col_index_num 必需。table_array
参数中必须返回的匹配值的列号。col_index_num 参数为 1 时,返回 table_array 第一列中的值;col_index_num 为 2 时,返回 table_array 第二列中的值,依此类推。
如果 col_index_num 参数:
小于 1,则 VLOOKUP 返回错误值 #VALUE!。
大于 table_array 的列数,则 VLOOKUP 返回错误值
#REF!。
range_lookup 可选。一个逻辑值,指定希望 VLOOKUP 查找精确匹配值还是近似匹配值:
如果 range_lookup 为 TRUE
或被省略,则返回精确匹配值或近似匹配值。如果找不到精确匹配值,则返回小于 lookup_value 的最大值。
要点 如果 range_lookup 为 TRUE
或被省略,则必须按升序排列 table_array 第一列中的值;否则,VLOOKUP 可能无法返回正确的值。
有关详细信息,请参阅对区域或表中的数据进行排序。
如果 range_lookup 为 FALSE,则不需要对 table_array 第一列中的值进行排序。
如果 range_lookup 参数为 FALSE,VLOOKUP
将只查找精确匹配值。如果 table_array 的第一列中有两个或更多值与 lookup_value 匹配,则使用第一个找到的值。如果找不到精确匹配值,则返回错误值 #N/A。
更多例子及说明:
确定需要匹配的数据:首先需要确定两个数据表中需要进行匹配的数据,其中一个数据表作为主表(通常包含完整数据),另一个作为目标表(通常需要从主表中匹配相应数据)。
创建VLOOKUP函数公式:在目标表格中新建一列,输入以下公式:=VLOOKUP(目标值, 主表数组, 返回值列数, 精确匹配/模糊匹配)。其中,目标值为需要匹配的值,主表数组为主表数据的范围(注意要包括目标列和返回值列),返回值列数为目标值匹配到主表数据后返回的数据所在列的编号,精确匹配/模糊匹配为TRUE或FALSE,用于指定是否精确匹配。
拖拽公式:将刚才输入的公式在目标表格中一直拖拽到需要匹配的数据的末尾,就可以自动匹配所有需要的数据了。
例如,要从主表中匹配学生的成绩,目标表中的学生姓名和班级编号与主表一致,可以使用以下公式:=VLOOKUP(A2, 主表数据范围, 2, FALSE)。其中A2是目标表中的学生姓名,2表示匹配到的学生成绩列所在的编号,FALSE表示要进行精确匹配。然后拖拽公式,即可匹配所有学生的成绩。
=IF(A2="","",IF(ISERROR(VLOOKUP(A2,F:G,2,0)),"无库存",VLOOKUP(A2,F:G,2,0))),下拉。