Google Sheets VLOOKUP 函数教程
本教程说明如何在 Google 表格(Google Sheets) 中使用 VLOOKUP 做数据匹配,并介绍 SurveyMars 内置的 VLOOKUP 问卷关联 题型如何实现问卷数据联动。
一、认识 VLOOKUP
如果您在电子表格中已有部分已知信息,可以使用 VLOOKUP 按行搜索相关信息。例如:想买一个橙子,可在价格表中用 VLOOKUP 根据「橙子」查其价格。
VLOOKUP(Vertical Lookup,垂直查找)在指定区域第一列中搜索关键字,找到匹配行后返回该行从左数第 N 列的值。适用于按编号、订单号、手机号、工号等匹配名称、价格、状态等字段。
提示:查找键值列必须位于 range 的最左侧;VLOOKUP 只能从左往右取列,不能从右侧列反查左侧列。
函数语法
=VLOOKUP(查找值, 查找范围, 返回列号, [是否近似匹配])
=VLOOKUP(search_key, range, index, [is_sorted])
search_key(查找值):要搜索的值,可为单元格引用或具体文本/数字;须位于 range 第一列。
range(查找范围):包含键值列与返回列的数据区域;可使用命名范围,跨表写作 Sheet2!$A$2:$B$100。
index(返回列号):从 range 最左列起算,从 1 开始的正整数。
is_sorted(是否近似匹配,可选):FALSE 完全匹配(推荐);TRUE 近似匹配(使用前须对第一列升序排序)。省略时默认为 TRUE。
二、VLOOKUP 函数示例
示例 1:在 G9 输入水果名称,用下列公式在 B4:D8 中查价格(第 3 列为价格):
=VLOOKUP(G9, B4:D8, 3, FALSE)
=VLOOKUP("Apple", B4:D8, 3, TRUE)

以下示例整理自 Google 官方帮助。点击标题可展开/收起;各示例可点击「试试看」在表格副本中练习。
VLOOKUP 基本示例
使用 VLOOKUP 查找不同的搜索键值
使用 VLOOKUP 查找「Orange」和「Apple」的价格。

说明:可使用不同搜索键值(如「Apple」「Orange」)。如需返回非错误值,这些搜索键值必须位于 range (范围)的第一列中。如果您不想为搜索键值填充值,也可以使用单元格引用,例如“G9”。
| 说明 | 公式与返回值 |
|---|---|
search_key (搜索键值)为「Orange」 | =VLOOKUP("Orange", B4:D8, 3, FALSE)返回值 = $1.01 |
search_key (搜索键值)为「Apple」 | =VLOOKUP("Apple", B4:D8, 3, FALSE)返回值 = $1.50 |
search_key (搜索键值)使用「Apple」的单元格引用(G9) | =VLOOKUP(G9, B4:D8, 3, FALSE)返回值 = $1.50 |
使用 VLOOKUP 查找不同列编号
在第二列(数量)中查找「Orange」的数量。

说明:假设range (范围)中的列从左到右编号,且从 1 开始。如需查找目标信息,您必须指定其列编号。例如,第 2 列表示数量。
| 说明 | 公式与返回值 |
|---|---|
index (编号)为2找出橙子的数量,也就是 range(范围)的第二列。 | =VLOOKUP(G3, B4:D8, 2, FALSE)返回值 = 5 |
VLOOKUP 完全匹配或近似匹配
- 完全匹配(FALSE):查找确切 ID。
- 近似匹配(TRUE):查找最接近的 ID(第一列须升序)。

说明:搜索 ID 102 但表中无此值时,近似匹配可能返回 101(小于 102 的最大值)。若第一列未升序,结果可能错误。日常场景建议使用完全匹配。
重要提示:使用近似匹配前,须对搜索键值列升序排序。
| 匹配方式 | 公式与返回值 |
|---|---|
| 完全匹配 | =VLOOKUP(G6, A4:D8, 2, FALSE)返回值 =「Apple」 |
| 近似匹配 | =VLOOKUP(G3, A4:D8, 2, TRUE) 或省略第四参数返回值 =「Banana」 |
VLOOKUP 常见应用场景
替换 VLOOKUP 中的错误值
搜索键值不存在时,可用 IFNA() 将 #N/A 替换为自定义文案。

| 说明 | 公式与返回值 |
|---|---|
| 一开始,VLOOKUP 会返回“#N/A”,因为“Fruit”列中不存在搜索键值“Pencil”。 IFNA() 会将“#N/A”错误替换为函数中指定的第二个输入项。在我们的示例中,其为「NOT FOUND」。 | =IFNA(VLOOKUP(G3, B4:D8, 3, FALSE), "NOT FOUND")返回值 =「NOT FOUND」 |
提示:替换 #REF! 等其他错误可使用 IFERROR()。
在 VLOOKUP 中使用多个条件
VLOOKUP 无法直接多条件查找。可建辅助列,用 & 合并多列作为键值。

| 步骤 | 公式与返回值 |
|---|---|
| 1. 如果您使用“&”将“First Name”和“Last Name”合并,则可以创建“Helper”列。 | =C4&D4,并将其从 B4 向下拖动到 B8,即可得到“Helper”列。 |
| 2. 将单元格引用 B7 (JohnLee) 用作搜索键值。 | =VLOOKUP(B7, B4:E8, 4, FALSE)返回值 =「Support」 |
在 VLOOKUP 中使用通配符或部分匹配项
? 匹配单字符,* 匹配任意序列。须配合 FALSE(完全匹配)使用。

| 说明 | 公式与返回值 |
|---|---|
"St*" 匹配以 St 开头的名称,例如“Steve”“St1”“Stock”或“Steeeeeeve”。 | =VLOOKUP("St*", B4:D8, 3, FALSE)返回值 =「Marketing」 |
三、出错了怎么排查
按下面场景对照即可;多数问题出在「键值列位置、格式、是否完全匹配、范围是否锁死」四件事上。
1. 表里明明有这条数据,为什么还是 #N/A?
答:依次检查——①查找值是否在 range 的最左列;②文本与数字是否一致(如 001 与 1);③首尾是否有多余空格;④数据源里是否真有该值。可用 TRIM 去空格,用 VALUE 或 TEXT 统一格式后再查。
2. 公式突然变成 #REF!,是列号写错了吗?
答:通常是 index(返回列号)大于 range 实际列数。从 range 最左列重新数到目标列,修正列号即可。
3. 提示 #VALUE!,公式哪里不对?
答:常见原因:index 小于 1;第四参数不是 TRUE/FALSE;range 引用无效。建议 index ≥ 1,第四参数写 FALSE(完全匹配)。
4. 能算出结果,但跟表格里的值对不上?
答:检查是否误用 TRUE(近似匹配)——日常请改用 FALSE;range 第一列若有重复键,VLOOKUP 只返回第一条;若多行结果雷同,多半是拖动时 range 没锁死。
5. 往下复制公式后,只有第一行对、下面全错?
答:查找范围要用绝对引用锁定,如 $B$4:$D$100;跨表写作 Sheet2!$A$2:$B$500,避免拖动时区域跟着偏移。
6. 想根据「姓名」查「工号」,VLOOKUP 为什么不行?
答:VLOOKUP 只能从左往右查,键值列必须在 range 最左侧。可把工号列移到左边,或改用 INDEX + MATCH、XLOOKUP。若公式报错,确认本地区分隔符是逗号还是分号(部分区域为 ;)。
四、SurveyMars:用 VLOOKUP 问卷关联实现问卷数据联动
若需在问卷作答时根据历史答卷或档案自动带出字段,不必导出到表格再写 VLOOKUP。SurveyMars 的 VLOOKUP 问卷关联 题型可在平台内完成问卷数据联动:作答者输入匹配关键字后,系统从源问卷查找并自动回填已配置题目。
与 VLOOKUP 的对应关系
| VLOOKUP 概念 | SurveyMars 配置 |
|---|---|
range(查找范围) | 源问卷数据 |
search_key(查找值) | 作答者填写的匹配项 |
index(返回列) | 待自动回填的题目字段 |
适用场景
- 会员/员工档案已采集,新调研用少量关键字带出基础信息
- 活动报名核对与信息补全
- 多轮调研与历史答卷字段对齐
配置说明
- 可视化配置:编辑端勾选源问卷与回填字段,无需手写公式
- 作答即联动:提交前完成匹配与回填,减少导出二次处理
- 权限可控:数据留在问卷系统内,便于管理访问范围
如何精准配置源问卷、匹配项与回填字段?解锁 SurveyMars VLOOKUP 问卷数据关联方法
常见问题
问:手机号、工号看起来一模一样,为什么就是匹配不上?
答:多半是「看起来一样、实际不一样」——一列是文本、一列是数字,或首尾有空格、前导零被吃掉。可先用 =TRIM(A1) 对比两格是否真相等;需要统一格式时配合 VALUE 或 TEXT。仍报 #N/A 时,再按第三节逐项排查。
问:匹配不到时不想满屏 #N/A,有没有更友好的显示?
答:可用 IFNA 包一层,找不到时显示「未找到」等自定义文案,例如 =IFNA(VLOOKUP(G3, B4:D8, 3, FALSE), "未找到")。第二节「替换 VLOOKUP 中的错误值」有完整示例。
问:价格表在另一个工作表里,公式该怎么写?
答:在 range 前加工作表名,如 =VLOOKUP(G9, 价格表!$A$2:$D$200, 3, FALSE)。工作表名含空格时用单引号:'2024 价格'!$A$2:$D$200。范围建议加 $ 绝对引用,避免复制公式时跑偏。
问:我有两份名单要对齐,VLOOKUP 和 INDEX+MATCH 该用哪个?
答:键值在查找区域最左列、只需往右取列时,VLOOKUP 足够。若要按右侧列(如姓名)反查左侧(如工号),或返回列在键值列左边,请用 INDEX + MATCH 或 XLOOKUP。Google 表格已支持 XLOOKUP,语法更直观。
问:问卷里想让填表人输入手机号就自动带出姓名,还要导出 Excel 写 VLOOKUP 吗?
答:不必。在 SurveyMars 中添加 VLOOKUP 问卷关联 题型,配置源问卷与回填字段即可在作答时完成联动,无需先导出再写公式。配置步骤见第四节,或点击上方绿色按钮查看官方帮助。