1.0 VLOOKUP 函数(最常用的查询函数)
这集专门讲「查询和参照」函数。从最经典的 VLOOKUP 开始,再学 IFERROR 处理错误,然后介绍更强大的 XLOOKUP(新版专用),以及适用所有版本的 INDEX + MATCH 组合。最后把这些函数整合成一个有下拉选单的自动查询表。
=VLOOKUP(关键字, 查询范围, 栏位编号, 0)
| 参数 | 说明 |
|---|
| 关键字 | 用来搜寻的值 |
| 查询范围 | 包含资料的表格,关键字必须在范围的最左栏 |
| 栏位编号 | 想回传第几栏的资料(从左数起) |
| 0 | 代表完全符合(几乎永远都要输入 0) |
📌 关键限制:VLOOKUP 只能从左到右查,无法往左查。复制公式前记得按 F4 锁定查询范围。
2.0 表格物件(Table Object)✅
推荐把资料转成表格物件,VLOOKUP 的查询范围会自动随表格大小调整。方法:Ctrl + A 全选 → Insert → Table → 确定。
3.0 IFERROR 函数(处理错误讯息)
当 VLOOKUP 找不到资料时,会显示 #N/A 错误代码。用 IFERROR 包住公式,可以自订错误时显示的文字。
=IFERROR(原本的公式, "错误时显示的文字")
Example:
=IFERROR(VLOOKUP(A3, 产品资料!C:G, 5, 0), "无此产品")
4.0 XLOOKUP 函数(新版 Excel 专用)
📌 需要 Excel 2021 或 Microsoft 365。不受栏位方向限制,内建错误处理。
=XLOOKUP(关键字, 搜寻范围, 回传范围, "找不到时显示的文字")
5.0 INDEX + MATCH 组合(万能替代方案)✅
不管用什么版本的 Excel 都支援,功能跟 XLOOKUP 一样强。
MATCH — 找顺位
=MATCH(关键字, 搜寻范围, 0) — 回传关键字在范围中是第几个
INDEX — 用顺位取値
=INDEX(范围, 行顺位, 列顺位) — 给它一个范围和顺位,它回传那个位置的値
组合起来用:
=INDEX(回传范围, MATCH(关键字, 搜寻范围, 0))
范例:跨工作表查询(向左查)
=IFERROR(INDEX(产品资料!B:B, MATCH(A3, 产品资料!C:C, 0)), "无此产品")
6.0 双 MATCH 动态查询(进阶应用)
用两个 MATCH 分别找行和列的顺位,就像 X、Y 坐标,可以精确定位表格中的任意位置。
=INDEX(整张表格, MATCH(行关键字, 行范围, 0), MATCH(列标题, 标题列, 0))
📌 表格栏位顺序改变时,公式不会出错,因为它是靠标题名称来定位。
7.0 整合应用 — 自动查询表
- 下拉选单:Data Validation → List,来源框选产品名称栏
- 查询公式:INDEX + 双 MATCH 自动带出产品类型、单价、折扣等
- 商品图片:VLOOKUP 查询图片栏,切换商品时图片也会即时更新 ✅
8.0 查询函数总结对比
| 函数 | 查询方向 | 版本要求 | 错误处理 |
|---|
VLOOKUP | 只能向右 | 所有版本 | 需要 IFERROR |
XLOOKUP | 任意方向 | 2021 / M365 | 内建 |
INDEX + MATCH | 任意方向 | 所有版本 | 需要 IFERROR |