EP07. “Left Lookup 向左查找”
🔒 登录后可标记已读- VLOOKUP 有个硬限制:只能往右查找,没办法用右边的列去查左边的列
- 讲怎么用 INDEX+MATCH 突破这个限制,实现「向左查找」
- 前置知识需要先看过 EP03 的 INDEX+MATCH
- 学完能处理「查找列不在最左边」这种 VLOOKUP 搞不定的表格结构
重点内容
方法怎么选
| 方法 | 适合场景 | 备注 |
|---|---|---|
| INDEX+MATCH | 旧版本 Excel | 用 MATCH 找位置、INDEX 取左边列的值 |
| XLOOKUP | Excel 365 / 2021 | 天生不受方向限制,见 EP13 |
操作步骤
假设查找列(比如 ID)在 G 列,要返回的数据(比如姓名)在更左边的 E 列——VLOOKUP 因为只能向右查找而做不到,要改用:
[截图:示例表格里姓名列(E列)在 ID 列(G列)左边的实际排列,直观呈现为什么 VLOOKUP 查不到]
- 用 MATCH 找 ID 的位置:
=MATCH(104,$G$4:$G$7,0)
在范围 $G$4:$G$7 里查找 104,结果返回位置 4(104 是这个范围里第 4 个值)。
- 用 INDEX 取左边列对应位置的值:
=INDEX($E$4:$E$7,MATCH(104,$G$4:$G$7,0))
MATCH 找到的位置(4)拿去 INDEX 在 $E$4:$E$7 范围里取第 4 个值,即使 E 列在 G 列左边也没问题。
- 向下拖拽填充:把公式从 B2 拖到 B11,两个范围($E$4:$E$7 和 $G$4:$G$7)用绝对引用锁定不变,查找值(A2)用相对引用会自动跟着变成 A3、A4、A5……
更简单的替代方案
Excel 365 或 Excel 2021 可以直接用 XLOOKUP 函数,天生不受"只能向右查找"的限制,见 EP13。XLOOKUP 返回结果自动铺开到多个单元格的行为叫 spilling(溢出)。
学完你会
- ✅ 能用 MATCH 找到查找值的位置,再用 INDEX 从左边的列取出对应数据
- ✅ 知道 VLOOKUP 只能向右查找,遇到向左查找的表格结构要改用 INDEX+MATCH
- ✅ 知道 Excel 365 / 2021 可以直接用 XLOOKUP,天生不受方向限制
常见错误
- 沿用 VLOOKUP 硬做向左查找,结果只能报错或者被迫把整个表格列顺序重排(改动原始数据结构风险大)
- 拖拽填充公式时忘记给范围加绝对引用符号
$,导致往下拖的时候范围跟着偏移、查找结果全错 - MATCH 和 INDEX 用的范围行数对不齐(比如 $E$4:$E$7 是 4 行但 $G$4:$G$7 变成了 5 行),导致取到的值跟预期位置错位
Sources
Blog / Website: