MATCHEXACT
描述
在您指定的已排序列表(一维数组)中查找值的完全匹配项,并返回值的位置。您可以使用此函数来匹配逻辑值、数值或文本字符串。MATCHEXACT 函数类似于 MATCH,但此函数:
- 始终搜索完全匹配项;如果未找到值,则返回 #N/A 错误。
- 不允许使用通配符,例如 * 或 ?。
- 使用二分搜索以获得更好的性能。
语法
MATCHEXACT(
lookup_value
, lookup_array
, [ match_type
]) - lookup_value:要查找的值。
- lookup_array:要搜索的数组。
- match_type:搜索时使用的条件。可能的值包括:
- 0 或更大 = 对指定的二分搜索lookup_value。lookup_array数据必须按升序排序。如果您省略该参数,此函数会将大于等于 0 的值用作该参数的值。
- 小于 0 = 按二分搜索查找指定的lookup_value。lookup_array数据必须按降序排序。
示例
示例基于以下工作簿:
A | B | C | D | E | F | G | H | |
|---|---|---|---|---|---|---|---|---|
1 | 主管组织
| 成本中心
| 公司
| 地点
| 2017 年 1 月(人员编制)
| 2017 年 2 月(人员编制)
| 2017 年 3 月(人员编制)
| 组织密钥
|
2 | Finance | CC-1 Finance | GMS | Pleasanton | 2 | 2 | 2 | FinanceCC-1 FinanceGMSPleasanton |
3 | Product Management | CC-2 Product | GMS | Boulder | 0 | 1 | 2 | Product ManagementCC-2 ProductGMSBoulder |
4 | Development | CC-3 Development | GMS-CA | Toronto | 2 | 2 | 2 | DevelopmentCC-3 DevelopmentGMS-CAToronto |
5 | Sales | CC-4 Sales | GMS-UK | London | 1 | 2 | 2 | SalesCC-4 SalesGMS-UKLondon |
6 | Sales | CC-4 Sales | GMS-UK | Toronto | 0 | 0 | 1 | SalesCC-4 SalesGMS-UKToronto |
7 | 5 | 7 | 9 |
对于公式
=MATCHEXACT("CC-3 Development",B2:B6)
,结果为 3
。您也可以通过组合使用 MATCHEXACT 和 INDEX 函数来返回匹配的值,而不是其位置。
对于公式
=INDEX(G2:G6,MATCHEXACT("CC-3 Development",B2:B6,1))
: 首先,MATCHEXACT 在数组 B2:B6 中搜索字符串“CC-3 Development”并返回该值的位置,即
3
。然后,INDEX 使用 3
将其作为第二个参数,并返回 G2:G6 中第 3 位的值,即 2
。注释
- 如果存在多个匹配项,此函数会返回第一个匹配项的位置。
相关函数
MATCH
MHLOOKUP
MVLOOKUP