Excel VLOOKUP函数详解:精确查询、模糊查询、反向查询和多列查询
Excel VLOOKUP函数详解:精确查询、模糊查询、反向查询和多列查询
VLOOKUP函数是Excel中非常实用的查询函数,可以实现精确查询、模糊查询、反向查询和多列查询等多种功能。本文将通过具体案例,详细介绍VLOOKUP函数的各种使用方法。
入门
精确查询
需求:查找学生编号是008所在的班级
操作:在I2单元格输入公式如下,=VLOOKUP(H2,B1:E12,4,FALSE)
,得出结果
让我们仔细分析VLOOKUP公式的每个参数:
语法:
vlookup(查找值, 数据表范围, 列序数, 匹配条件)
查找值:
H2
(在H2单元格写好学生编号:008)数据表范围:
B1:E12
为什么数据表范围选择
B1:E12
而不是A1:E12
?因为查找值(学生编号)必须在数据表范围的第一列,否则会报错(如下图)。
学生编号在
B1:E12
这个数据范围的第一列,所以数据表范围选择B1:E12
,而不是A1:E12
。列序数:4(要得到的结果“班级”列在数据表范围的第4列)
匹配条件:
FALSE
(表示精确匹配)
再测试查一下学生编号是008的专业:
查学生姓名是“小二”的入学日期。
模糊查询
需求:根据右侧表,算出左侧表各学生的奖金
第4个参数写true
,表示模糊匹配
注意第2个参数(数据表范围)用绝对引用,因为后续要进行奖金列的下拉填充
将E2单元格下拉填充得到如下,就算出了学生成绩对应的奖金
注意这里需要是升序排序,降序排序会报错
反向查询(搭配IF函数)
需求:根据学生编号,查询学生姓名
当VLOOKUP的查找值(学生编号)不在数据值范围的第一列时,通过IF函数重构查找数据值范围
用IF函数交换“学生编号”和“学生姓名”这两列
I2单元格输入:=VLOOKUP(H2,IF({1,0},B1:B12,A1:A12),2,FALSE)
再练习另一个反向查询:
根据学生编号,查询入学日期
多列查询(搭配MATCH函数)
需求:根据学生编号查询后面的一排信息,在入学日期I2处写入公式,后面的“专业”、“班级”等列可以实现自动填充
I2处写入:=VLOOKUP($H$2,$A$1:$E$12,MATCH(I1,$A$1:$E$1,0),FALSE)
(注意,为了批量填充,单元格除了I1,多处使用了绝对引用)
得到结果
把I2单元格右拉填充得到各结果
本文原文来自CSDN