excel 里的 match 函数作用是在一行或者一列单元格区域里面查找指定内容,返回这个内容在区域里面所处的位置序号,它本身只返回位置数字,不会直接返回单元格对应的内容,这是和 vlookup 最大的区别,很多新手容易混淆,vlookup 是匹配出对应数值,match 是找到排第几,match 函数经常和 index 函数搭配组合,实现双向查找,弥补 vlookup 只能纵向查找的缺陷,函数语法一共三个参数,查找值 查找区域 匹配类型,匹配类型分为精确匹配 升序近似匹配 降序近似匹配,日常办公绝大多数场景都使用精确匹配,也就是第三参数写 0,公式必须以等号开头,输入回车之后得到位置序号,原始数据变动结果会自动更新,查找不到目标内容的时候会返回 N/A 报错,所有主流 excel 版本都自带 match 函数,不需要加载分析工具库,支持下拉填充批量查找,也可以搭配绝对引用锁定查找区域,避免下拉的时候区域偏移,适合名单定位 序号查询 表格行列定位这类数据处理场景。
函数基础语法
match 函数完整语法 =MATCH (查找值,查找区域,匹配类型)
参数说明
查找值 想要搜索的目标内容,可以是文字 数字 单元格引用
查找区域 必须是单行或者单列,不能是多行多列整块区域,这个是重点限制
匹配类型 三个可选值
1 近似匹配,区域必须升序排列,查找小于等于查找值的最大值
0 精确匹配,不需要排序,办公最常用
负 1 近似匹配,区域必须降序排列
基础示例
=MATCH ("张三",A1:A10,0)
含义 在 A1 到 A10 这一列里面精确查找张三,返回张三在这个区域里面是第几个位置
详细操作步骤
1 选中需要输出结果的空白单元格
2 输入等号,接着输入 MATCH,左括号
3 第一个参数选择查找目标单元格,或者直接输入查找文字
4 输入逗号,鼠标拖动选择单行或者单列查找区域
5 输入逗号,填写匹配类型,日常填写 0 做精确匹配
6 输入右括号,按下回车键,单元格输出位置序号
7 如果需要批量查找,鼠标放到单元格右下角,光标变成黑色十字下拉填充,记得按 F4 把查找区域改成绝对引用,比如 A1:A10 改成 $A$1:$A$10,防止下拉区域移位
index 加 match 组合用法
单独 match 只能返回位置,搭配 index 就可以根据这个位置取出对应内容,这是 match 最经典的实战组合
组合公式 =INDEX (返回数据区域,MATCH (查找值,查找区域,0))
例子 要根据姓名查找对应手机号
=INDEX (B1:B10,MATCH ("张三",A1:A10,0))
逻辑 先用 match 找到张三在 A 列第几行,再把这个行号传给 index,从 B 列取出同行手机号
优势 相比 vlookup,index 加 match 可以实现从左向右 从右向左双向查找,vlookup 只能从查找列向右取数,向左查找会受限
三种匹配模式对比表格
| 匹配类型 | 是否需要排序 | 查找规则 | 适用场景 |
|---|---|---|---|
| 0 | 不需要排序 | 完全一致才匹配 | 姓名编号精确查找 |
| 1 | 区域升序 | 找小于等于目标的最大值 | 区间分级判定 |
| -1 | 区域降序 | 找大于等于目标的最小值 | 降序区间匹配 |
报错与进阶要点
N/A 报错,查找区域里面没有找到目标内容,或者文字存在空格大小写不一致,核对查找值,清除多余空格再重试
查找区域错误,选中了多行多列区域,match 只支持单行单列,必须改成单列或者单行区域
近似匹配陷阱,如果选择 1 或者负 1 但是区域没有按要求排序,返回结果会错乱,没有特殊需求优先使用 0 精确匹配
大小写区分,match 精确匹配不区分英文大小写,大写小写会判定为相同内容
excel 里的 match 函数核心就是返回目标在单列单行里面的位置序号,日常优先第三参数填 0 精确匹配,单独使用可以查询序号,和 index 组合就能实现双向数据调取,使用时注意查找区域只能是单行或者单列,下拉填充记得绝对引用锁定区域,N/A 报错优先检查目标是否存在以及是否多余空格。
【常见问题】
问题 1 excel 里的 match 函数怎么用出现 N/A 是什么原因
回答 1 excel 里的 match 函数怎么用出现 N/A,代表查找区域里面没有匹配到查找值,也有可能单元格前后存在看不见的空格,核对目标内容,清理空格之后 excel 里的 match 函数怎么用就可以正常返回位置序号。
问题 2 excel 里的 match 函数怎么用查找区域可以选多列吗
回答 1 excel 里的 match 函数怎么用查找区域不支持多行多列,只能是单行或者单列区域,如果需要多列匹配,要搭配其他函数嵌套,excel 里的 match 函数怎么用本身设计定位就是单行单列定位。
问题 3 excel 里的 match 函数怎么用和 vlookup 有什么区别
回答 1 excel 里的 match 函数怎么用只返回位置序号,vlookup 直接返回匹配的数据内容,excel 里的 match 函数怎么用经常搭配 index,实现 vlookup 不方便的反向查找。
【免责申明】
本文基于通用版本 excel 讲解 match 函数语法与组合用法,不同版本函数参数逻辑保持一致,内容仅作为学习参考,重要业务表格请提前备份,因参数填写错误或者区域设置不当造成结果异常,相关风险由使用者自行承担。


