MICROSOFT

EP14. “XMATCH Function XMATCH 函数”

首页 Microsoft 工具 Excel · Functions · Lookup & Reference · EP14
约 5 分钟· #EP14#Excel#Lookup & Reference
🔒 登录后可标记已读
  • XMATCH 是 MATCH 函数的升级版(Excel 365 / 2021 才有)
  • 语法更简单,还多了通配符匹配和反向搜索功能
  • 前置知识建议先看过 EP03 的 MATCH 用法,方便对照差异
  • 学完能配合 INDEX 做出比传统 MATCH 更灵活的查找

重点内容


函数速查

函数语法用途例子
XMATCH=XMATCH(lookup_value, lookup_array, [match_mode], [search_mode])查找值在范围中的位置,功能比 MATCH 更多=XMATCH("Cherry",A2:A7) → 2

MATCH 和 XMATCH 怎么选

场景MATCHXMATCH
精确匹配基础用法第三参数要写 0只需 2 个参数即可
近似匹配需要先排序
通配符匹配不支持支持(第三参数设 2)
反向搜索(找最后一个匹配)不支持支持(第四参数设 -1)
版本要求桌面版通用仅 Excel 365 / 2021 及以上

基础用法

=XMATCH("Cherry",A2:A7)

在范围 A2:A7 里查找 "Cherry",因为它是第 2 项,结果返回 2。跟传统 MATCH 相比,XMATCH 基础用法只需要 2 个参数(不需要像 MATCH 那样一定要给第三参数)。


近似匹配

第三参数 match_mode

  • 设为 -1:找不到精确值时,返回"下一个较小的项"。比如要找分数 77 但数据里没有,XMATCH 返回 3(因为 74 是比 77 小的最接近的项)
  • 设为 1:找不到精确值时,返回"下一个较大的项"。同样找 77,XMATCH 返回 4(因为 81 是比 77 大的最接近的项)
  • 优势是不需要像 VLOOKUP 近似匹配那样,事先把数据排序

通配符匹配

第三参数设为 2,可以启用通配符:* 代表任意多个字符,? 代表单一字符。比如查找模式匹配到 "Banana",返回它的位置 5。


反向搜索

第四参数 search_mode

  • 设为 1(默认):从第一项往最后一项搜索
  • 设为 -1:从最后一项往第一项搜索。比如 "Apple" 在列表里出现了两次,设成 -1 会找到最后一次出现的位置(结果 6),而不是第一次出现的位置

搭配 INDEX 使用

XMATCH 负责在一列里找位置,INDEX 根据这个位置去另一列取对应的值。比如 XMATCH 在 A2:A7 里找到 "Mango" 的位置是 4,INDEX 就用这个 4 去 B2:B7 取第 4 个值,结果是 60。

=INDEX(B2:B7,XMATCH("Mango",A2:A7))


学完你会

  • ✅ 能用 XMATCH 做出比传统 MATCH 更简洁的精确匹配查找
  • ✅ 能用 XMATCH 的通配符和反向搜索功能处理传统 MATCH 做不到的场景
  • ✅ 能搭配 INDEX 用 XMATCH 找到的位置取出对应的值

常见错误

  • XMATCH 只在 Excel 365 / Excel 2021 及之后版本可用,旧版本会报错
  • 近似匹配的 -1 和 1 方向记反:-1 是找较小值,1 是找较大值,容易跟直觉搞混
  • 通配符匹配时忘记把第三参数设成 2,导致 *? 被当成普通字符而不是通配符处理

Sources

Blog / Website:

  1. Xmatch