EP06. “Case-sensitive Lookup 区分大小写查找”
🔒 登录后可标记已读- VLOOKUP 默认是不区分大小写的查找(比如 "Mia" 和 "MIA" 会被当成同一个值)
- 讲怎么用 EXACT 搭配 INDEX+MATCH 做出真正区分大小写的查找
- 另外也提一下 Excel 365 的 XLOOKUP 替代方案
- 前置知识需要先看过 EP03 的 INDEX+MATCH
- 学完能处理姓名/代号里大小写不同但含义不同的查找场景
重点内容
函数速查
| 函数 | 语法 | 用途 | 例子 |
|---|---|---|---|
| EXACT | =EXACT(text1,text2) | 区分大小写比较两个字符串 | =EXACT("MIA Reed","Mia Clark") → FALSE |
方法怎么选
| 方法 | 适合场景 | 备注 |
|---|---|---|
| EXACT + MATCH + INDEX | 旧版本 Excel | 步骤多,且要按 Ctrl + Shift + Enter |
| XLOOKUP | Excel 365 / 2021 | 天生支持区分大小写,写法更简单,见 EP13 |
操作步骤
- 理解 EXACT 函数:
=EXACT(B8,B3),比较目标值跟某个单元格是否完全相同(含大小写)。比如比较 "MIA Reed" 与 "Mia Clark",返回 FALSE。 - 把单一比较扩展成数组:把公式里的单一单元格
B3换成整个范围B3:B9,生成一个数组常量,比如结果是{FALSE;FALSE;FALSE;FALSE;FALSE;TRUE;FALSE}(这是存在 Excel 内存里的临时数组,不是写在单元格里)。 - 用 MATCH 找 TRUE 的位置:
=MATCH(TRUE,EXACT(B8,B3:B9),0)
第三参数设 0 做精确匹配,按 Ctrl + Shift + Enter 确认成数组公式,找出 TRUE 出现在第几个位置(比如第 6 个)。
- 用 INDEX 取出对应的值:
=INDEX(D3:D9,MATCH(TRUE,EXACT(B8,B3:B9),0))
同样要按 Ctrl + Shift + Enter 确认。结果会返回第 6 个位置对应的薪资数据。
更简单的替代方案
如果是 Excel 365 或 Excel 2021,可以直接用 XLOOKUP 函数实现区分大小写的查找(XLOOKUP 详见 EP13),不需要绕这么多层。
学完你会
- ✅ 能用 EXACT 搭配 MATCH、INDEX 做出区分大小写的查找
- ✅ 知道 VLOOKUP 和一般的 MATCH 都不区分大小写
- ✅ 知道 Excel 365 / 2021 用 XLOOKUP 能更简单地实现同样效果
常见错误
- 忘记用
Ctrl + Shift + Enter确认数组公式,导致公式只处理了第一个值而不是整个范围 - 以为把 VLOOKUP 的查找值改成精确大小写就能变成区分大小写查找,实际上 VLOOKUP 本身不支持区分大小写
- MATCH 里的第三参数没设成 0,导致在布尔值数组里查找 TRUE 时匹配错位置
Sources
Blog / Website: