XMATCH 函数

应用对象
Microsoft 365 专属 Excel Microsoft 365 Mac 版专属 Excel Excel 2024 Excel 2024 for Mac Excel 2021 Excel 2021 for Mac

XMATCH 函数在数组或单元格区域中搜索指定项,然后返回项的相对位置。

假设我们在单元格 C3 到 C7 中有一个产品列表,我们希望确定单元格 E3 中的产品位于列表中的位置。 在这里,我们将使用 XMATCH 来确定项在列表中的位置。

使用 XMATCH 查找项在列表中的位置的示例

语法

XMATCH 函数返回项目在数组或单元格区域中的相对位置。 

=XMATCH(lookup_value, lookup_array, [match_mode], [search_mode])

参数 说明
lookup_value
必需​​
查找值
lookup_array
必需​​
要搜索的数组或区域
[match_mode]
可选
指定匹配类型:
0 - 完全匹配(默认值)
-1 - 完全匹配或下一个最小项
1 - 完全匹配或下一个最大项
2 - 通配符匹配,其中 *, ? 和 ~ 有特殊含义
[search_mode]
可选
指定搜索类型:
1 - 搜索从第一到最后一个(默认值)
-1 - 搜索从最后到第一个(反向搜索)。
2 - 执行依赖于 lookup_array 按升序排序的二进制搜索。 如果未排序,将返回无效结果。
2 - 执行依赖于 lookup_array 按降序排序的二进制搜索。 如果未排序,将返回无效结果。

示例

示例 1

在下面的示例中确定与“Gra”值完全匹配或最接近的第一个短语的确切位置。

公式: XMATCH (E3,C3:C7,1)

列出单元格 C3 到 C7 的不同水果产品的 Excel 表格。XMATCH 公式用于查找文本与单元格 E3) 中定义的 gra (匹配的表中的位置。当文本 Grape 位于表中的第 2 位时,公式返回 2。

示例 2

以下示例确定了有资格获得奖金的销售人员人数。 为了发现列表中最接近的项目或完全匹配项,这也使用 1 作为match_mode;但是,因为数据是数值,所以它返回值计数。 由于在此实例中有 4 个销售代表超过了奖励金额,因此该函数生成 4。

公式=XMATCH (F2,C3:C9,1)

一个 Excel 表格,其中列出了单元格 B3 到 B9 中销售代表的姓名,以及单元格 C3 到 C9 中每个代表的总销售额。XMATCH 公式用于返回符合单元格 F2 中设置的阈值金额的有资格获得奖金的销售代表人数。

示例 3

接下来,我们将使用 INDEX/XMATCH/XMATCH 的组合同时执行垂直和水平查找。 在此实例中,我们希望返回某个销售代表和月份的销售总额。 这类似于组合 INDEXMATCH 方法,但它使用的参数较少。

公式=INDEX (C6:E12,XMATCH (B3,B6:B12) ,XMATCH (C3,C5:E5) )

一个 Excel 表,其中销售代表的姓名列在单元格 B6 到 B12 中,每个代表从 1 月到 3 月的销售额列在列 C、D 和 E 列中。INDEX 和 XMATCH 的公式组合用于返回单元格 B3 和 C3 中列出的特定销售代表和月份的销售额。

示例 4

此外,XMATCH 可用于返回数组内的值。 例如,{5,4,3,2,1}) 4 (=XMATCH 将提供 2,因为 4 是数组的第二个条目。 在这种完全匹配的情况下,=XMATCH (4.5,{5,4,3,2,1},1) 生成 1,而 1) (match_mode 参数配置为返回完全匹配项或下一个最大项,即 5。 

需要更多帮助吗?

你随时可以在 Excel 技术社区 中咨询专家,或在 社区中获取支持。