XMATCH 函数在数组或单元格区域中搜索指定项,然后返回项的相对位置。
假设我们在单元格 C3 到 C7 中有一个产品列表,我们希望确定单元格 E3 中的产品位于列表中的位置。 在这里,我们将使用 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)
示例 2
以下示例确定了有资格获得奖金的销售人员人数。 为了发现列表中最接近的项目或完全匹配项,这也使用 1 作为match_mode;但是,因为数据是数值,所以它返回值计数。 由于在此实例中有 4 个销售代表超过了奖励金额,因此该函数生成 4。
公式=XMATCH (F2,C3:C9,1)
示例 3
接下来,我们将使用 INDEX/XMATCH/XMATCH 的组合同时执行垂直和水平查找。 在此实例中,我们希望返回某个销售代表和月份的销售总额。 这类似于组合 INDEX 和 MATCH 方法,但它使用的参数较少。
公式=INDEX (C6:E12,XMATCH (B3,B6:B12) ,XMATCH (C3,C5:E5) )
示例 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 技术社区 中咨询专家,或在 社区中获取支持。