目录
一、基础入门:VLOOKUP函数基础语法
函数语法详解
快捷技巧:绝对引用与F4键
二、案例1:精确匹配查找 – 根据学号补全信息
场景需求
数据示例
解决方案
核心要点
三、案例2:工资计算 – VLOOKUP与数学运算结合
场景需求
解决方案
公式解析
四、案例3:近似匹配 – 业绩提成计算
场景需求
数据准备
解决方案
近似匹配要点
实际计算示例
五、案例4:通配符应用 – 模糊查找
通配符介绍
场景需求
解决方案
应用场景
六、案例5:逆向查找 – IF({1,0})经典结构
场景需求
解决方案
原理解析
进阶应用:多条件查找
七、案例6:一对多查询 – 突破VLOOKUP限制
场景需求
解决方案:辅助列法
1. 创建辅助列
2. 查询公式
3. 向下填充
八、案例7:多值查询与数组应用
场景需求
N()和T()函数
解决方案
九、案例8:查询返回多列信息(第三参数应用)
场景需求:求所选姓名在所有年份的总销量
解决方案:
返回多列信息
九、VLOOKUP常见错误与解决方案
1. #N/A错误:找不到查找值
2. #REF!错误:返回列数超出范围
3. 近似匹配结果错误
4. 查找值类型不匹配
十、VLOOKUP性能优化技巧
1. 限制查找范围
2. 使用表格引用(Excel 2007+)
3. 排序优化
十一、VLOOKUP替代方案
1. INDEX+MATCH组合
2. XLOOKUP(Office 365)
3. FILTER函数(Office 365)
十二、实战综合应用
创建动态查询系统
构建多级联动查询
十三、总结与最佳实践
VLOOKUP使用决策树
记忆要点
学习路径建议
如果你只能学习一个Excel函数,那一定是VLOOKUP。作为Excel中最强大、最实用的查找函数,VLOOKUP是数据处理与分析的核心技能。本文将带你从零开始,通过八大实战案例,全面掌握VLOOKUP函数的精髓。
一、基础入门:VLOOKUP函数基础语法
函数语法详解
VLOOKUP(查找值, 查找区域, 返回列数, [匹配类型])
-
查找值:要查找的内容,可以是数值、文本或单元格引用
-
查找区域:包含查找值和返回值的表格区域,查找值必须在区域的第一列
-
返回列数:从查找区域第一列开始,向右数到要返回的列的序号
-
匹配类型:
-
FALSE 或 0:精确匹配
-
TRUE 或 1:近似匹配(要求查找区域第一列必须按升序排列)
-
快捷技巧:绝对引用与F4键
// 选中引用区域后马上按F4键 相对引用:A2:C15 → $A$2:$C$15 再次按F4:A$2:C$15 再次按F4:$A2:$C15 再次按F4:A2:C15(恢复相对引用)
二、案例1:精确匹配查找 – 根据学号补全信息
场景需求
通过学号快速查找并补全学生的姓名和部门信息。
数据示例

解决方案
// 查找姓名 =VLOOKUP($E3, $A$2:$C$15, 2, 0)
// 查找部门 =VLOOKUP($E3, $A$2:$C$15, 3, 0)
核心要点
$E3:查找值使用混合引用,行相对、列绝对
$A$2:$C$15:查找区域使用绝对引用,复制公式时不会改变
2和3:返回查找区域中的第2列(姓名)和第3列(部门)
0:使用精确匹配,确保只返回完全匹配的结果
视频演示:
根据学号补全姓名和部门(Vlookup函数)
三、案例2:工资计算 – VLOOKUP与数学运算结合
场景需求
根据员工部门查找对应的津贴,计算最终工资(基础工资+津贴)。

解决方案
=VLOOKUP(C3, H$3:I$6, 2, 0) + D3
公式解析
-
C3:部门(查找值)
-
H$3:I$6:津贴对照表(部门在H列,津贴在I列)
-
D3:基础工资
-
结果:基础工资 + 对应部门的津贴
视频演示:
计算每个人的工资:基础工资+津贴(Vlookup函数)
四、案例3:近似匹配 – 业绩提成计算
场景需求
根据业绩金额自动匹配提成比例,计算提成金额。
数据准备

解决方案
// 标准公式 =VLOOKUP(B3, $I$5:$J$8, 2, 1) * B3
// 简化公式(使用数组常量) =VLOOKUP(B3%%, {0,0;1,0.05;10,0.1;20,0.12}, 2, 1) * B3
近似匹配要点
查找区域必须升序排列:这是近似匹配的前提条件
匹配逻辑:查找小于或等于查找值的最大值
B3%%:将B3除以10000,简化数值范围
实际计算示例
业绩142000 → 查找≤142000的最大提成段是100000 → 提成比例0.1 提成金额 = 142000 × 0.1 = 14200
视频演示:
计算提成金额(EXCEL最有用函数Vlookup函数)
五、案例4:通配符应用 – 模糊查找
通配符介绍
*:匹配任意多个字符
?:匹配单个字符
~:转义字符,查找通配符本身
场景需求
在产品描述中查找包含特定品牌名的记录,提取首次销售日期。

解决方案
// 查找品牌首次销售日期 =VLOOKUP("*" & G4 & "*", A:D, 4, FALSE)
// 查找特定位数评价的首次出现 =VLOOKUP(K4, C$2:C$19 & "", 1, FALSE)
// 查找第一个无报价(包含?)的日期 =VLOOKUP("~?*", B:D, 3, FALSE)
应用场景
品牌筛选:在复杂的产品名称中提取品牌信息
模式匹配:查找特定模式的文本
异常检测:查找包含特殊字符的记录
视频演示:
求下面品牌第一次销售日期(Vlookup与通配符)
六、案例5:逆向查找 – IF({1,0})经典结构
场景需求
VLOOKUP默认只能从左向右查找,通过IF({1,0})结构实现逆向查找(从右向左)。

解决方案
// 逆向查找:通过评价数查找品牌配置 =VLOOKUP(G4, IF({1,0}, $C$2:$C$29 & "", $A$2:$A$29), 2, FALSE)
原理解析
IF({1,0}, 区域2, 区域1) 创建一个虚拟数组:
-
当条件为1(TRUE)时,返回区域2
-
当条件为0(FALSE)时,返回区域1
这样就将原本在右边的查找值(评价数)移到了虚拟数组的第一列,实现逆向查找。
进阶应用:多条件查找
// 查找每天的第一单销售信息 销售金额:=TRIM(MID(SUBSTITUTE(VLOOKUP("*"&$F13,$B$2:$B$29&"|"&$A$2:$A$29&"|"&$D$2:$D$29,1,FALSE),"|",REPT(" ",99)),1,99)) 销售产品:=TRIM(MID(SUBSTITUTE(VLOOKUP("*"&$F13,$B$2:$B$29&"|"&$A$2:$A$29&"|"&$D$2:$D$29,1,FALSE),"|",REPT(" ",99)),99,99))
视频演示:
求各个位数的评价数第一次的销售产品(Vlookup逆向查找)
七、案例6:一对多查询 – 突破VLOOKUP限制
场景需求
查找指定人员的所有分数记录(VLOOKUP默认只返回第一个匹配项)。

解决方案:辅助列法
1. 创建辅助列
// 辅助列公式 =B2 & COUNTIF($B$2:B2, $J$1)
-
原理:为每个姓名添加序号,使其唯一
-
示例:"葛畅" → "葛畅0"、"葛畅1"、"葛畅2"…
2. 查询公式
// 查询分数 =IFERROR(VLOOKUP($J$1 & ROW(1:1), $A:$D, 3, 0), "")
// 查询日期 =IFERROR(VLOOKUP($J$1 & ROW(1:1), $A:$D, 4, 0), "")
3. 向下填充
将公式向下拖动,ROW(1:1)会自动变为ROW(2:2)、ROW(3:3)…,从而查询第1、2、3…条记录。
视频演示:
求指定人员的所有分数(VLOOKUP突破一对一的查询)
八、案例7:多值查询与数组应用
场景需求
同时查找多个人或序号对应的分数,进行计算。

N()和T()函数
N(区域):将区域内容转换为数值,非数值转为0
T(区域):将区域内容转换为文本,非文本转为空
解决方案
// 求多个人的平均分 =AVERAGEA(VLOOKUP(T(IF({1}, F2:F4)), B:C, 2, ))
// 求多个序号的总分(两种方法) 方法1:=SUM(VLOOKUP(N(IF({1}, F7:F10)), A:C, 3, )) 方法2:=SUM(VLOOKUP(N(IF(1, {2,5,8,9})), A:C, 3, ))
视频演示:
求下面三个人的平均分(VLOOKUP第一参数的数组应用)
九、案例8:查询返回多列信息(第三参数应用)
场景需求:求所选姓名在所有年份的总销量

解决方案:
返回多列信息
// 求和所选姓名在所有年份的总销量 =SUM(VLOOKUP(M3, A:K, COLUMN(B:K), 0))
COLUMN(B:K)技巧:生成数组{2,3,4,5,6,7,8,9,10,11},一次性返回多列数据。
视频演示:
求所选姓名所有年份的总销量(Vlookup查询返回多列信息)
九、VLOOKUP常见错误与解决方案
1. #N/A错误:找不到查找值
原因:查找值在查找区域中不存在 解决:
=IFERROR(VLOOKUP(…), "未找到")
2. #REF!错误:返回列数超出范围
原因:返回列数大于查找区域的列数 解决:检查返回列数是否正确
3. 近似匹配结果错误
原因:查找区域未按升序排列 解决:对查找区域第一列进行升序排序
4. 查找值类型不匹配
原因:文本型数字与数值型数字不匹配 解决:统一数据类型
// 文本转数值 =VLOOKUP(–A2, …)
// 数值转文本 =VLOOKUP(TEXT(A2, "0"), …)
十、VLOOKUP性能优化技巧
1. 限制查找范围
// 不好:查找整个列 =VLOOKUP(A2, D:E, 2, 0)
// 好:限制具体范围 =VLOOKUP(A2, D2:E1000, 2, 0)
2. 使用表格引用(Excel 2007+)
=VLOOKUP([@学号], 表1, 2, 0)
3. 排序优化
对查找区域第一列建立索引,提高查找速度。
十一、VLOOKUP替代方案
虽然VLOOKUP功能强大,但在某些场景下,其他函数可能更合适:
1. INDEX+MATCH组合
// 更灵活的查找组合 =INDEX(C:C, MATCH(A2, B:B, 0))
优势:不受"查找值必须在第一列"的限制
2. XLOOKUP(Office 365)
// 更强大的新一代查找函数 =XLOOKUP(A2, B:B, C:C, "未找到", 0, 1)
优势:无需指定返回列数,支持逆向查找
3. FILTER函数(Office 365)
// 筛选出所有匹配项 =FILTER(C:C, B:B=A2)
优势:直接返回所有匹配结果,无需辅助列
十二、实战综合应用
创建动态查询系统
// 主查询公式 =IFERROR( VLOOKUP( $A$2, // 查询条件 IF($B$2="全部", $D$2:$F$100, FILTER($D$2:$F$100, $E$2:$E$100=$B$2)), // 动态区域 CHOOSE($C$2, 2, 3, 1), // 动态返回列 0 ), "无匹配结果" )
构建多级联动查询
// 一级查询:根据省份查城市 省份查询:=VLOOKUP(A2, 省份表, 2, 0)
// 二级查询:根据城市查区县 城市查询:=VLOOKUP(B2, FILTER(区县表, 区县表[城市]=B2), 2, 0)
十三、总结与最佳实践
VLOOKUP使用决策树
开始查询 │ ├─ 需要精确匹配? → 是 → 使用VLOOKUP(…, 0) │ │ │ └─ 查找值在左侧? → 否 → 使用IF({1,0})或INDEX+MATCH │ ├─ 需要近似匹配? → 是 → 确保区域升序 → 使用VLOOKUP(…, 1) │ ├─ 需要返回多个结果? → 是 → 使用辅助列法或FILTER函数 │ └─ 需要多条件查找? → 是 → 使用连接键或INDEX+MATCH组合
记忆要点
VLOOKUP四参数,查找区域要记牢; 精确匹配用0,近似匹配1不能少; 查找值在第一列,返回列数向右找; 绝对引用F4键,错误处理要周到; 逆向查找IF帮忙,一对多用辅助列妙; 数组公式威力大,多值查询效率高。
学习路径建议
初学者:掌握案例1-3,满足80%日常需求
进阶者:学习案例4-5,处理复杂查询场景
高手:精通案例6-8,实现高级数据处理
通过本文的八大实战案例,你已经从VLOOKUP的新手成长为能够应对各种复杂场景的专家。记住,实践是最好的老师,将这些技巧应用到实际工作中,你会发现自己处理数据的效率将大幅提升!
计算机科学与技术 & 计算机网络技术:双专业课程体系完全导航指南
本章目录( 第七章 Excel查找与引用函数[高手必修函数])
1、Excel VLOOKUP函数完全指南:从入门到精通,八大实战场景全解析
2、Excel多条件查询实战:VLOOKUP与SUMIFS的强强联合
3、Excel HLOOKUP函数深度解析:水平查询与交叉匹配的完美结合
4、Excel MATCH函数全解析:精确定位、近似匹配与交叉查询实战
5、Excel MATCH函数进阶:通配符应用与数组技巧实战解析
6、Excel INDEX函数完全指南:数组与引用两种形式的实战应用
7、Excel LOOKUP函数深度解析:向量与数组两种形式的实战应用
8、Excel CHOOSE函数全攻略:从基础选择到高级数据重组的全能工具
9、Excel INDIRECT函数深度解析:动态引用的终极武器
10、Excel OFFSET函数完全指南:动态引用与高级应用的终极工具
11、Excel ADDRESS函数深度解析:动态构建单元格地址的艺术
12、Excel信息函数全解析:ROWS、COLUMNS、AREAS、FORMULATEXT实战指南
13、Excel GETPIVOTDATA函数深度指南:多年度数据透视表智能汇总实战
14、Excel HYPERLINK函数终极指南:智能超链接与动态导航系统
本系列目录导航
Excel函数从入门到精通完全导航目录(第一到第九章)
网硕互联帮助中心





评论前必须登录!
注册