内容
昨天在马拉松 30 天 30 个 Excel 函数 我们使用函数找到了文本字符串 搜索 (搜索),也使用 IFERROR (如果错误)和 ISNUMBER (ISNUMBER) 在函数抛出错误的情况下。
在我们马拉松的第 19 天,我们将学习函数 MATCH (搜索)。 它在数组中查找一个值,如果找到一个值,则返回其位置。
那么,让我们转向关于函数的参考信息 MATCH (匹配)并看几个例子。 如果您有自己的示例或使用此功能的方法,请在评论中分享。
功能 19:匹配
功能 MATCH (MATCH) 返回一个值在数组中的位置,或者一个错误 #在 (#N/A) 如果没有找到。 数组可以是已排序的,也可以是未排序的。 功能 MATCH (MATCH) 不区分大小写。
如何使用 MATCH 功能?
功能 MATCH (MATCH) 返回一个元素在数组中的位置,这个结果可以被其他函数使用,例如 指数 (索引)或 VLOOKUP (VPR)。 例如:
- 在未排序的列表中查找元素的位置。
- 与...配合使用 选择 (SELECT) 将学生成绩转换为字母成绩。
- 与...配合使用 VLOOKUP (VLOOKUP) 用于灵活的列选择。
- 与...配合使用 指数 (INDEX) 以找到最接近的值。
语法匹配
功能 MATCH (MATCH) 具有以下语法:
MATCH(lookup_value,lookup_array,[match_type])
ПОИСКПОЗ(искомое_значение;просматриваемый_массив;[тип_сопоставления])
- Lookup_Array中 (lookup_value) – 可以是文本、数字或布尔值。
- 查找数组 (lookup_array) – 数组或数组引用(同一列或同一行中的相邻单元格)。
- 比赛类型 (match_type) 可以取三个值: -1, 0 or 1. 如果省略参数,则等效于 1.
陷阱 MATCH (MATCH)
功能 MATCH (MATCH) 返回找到的元素的位置,但不返回它的值。 如果要返回值,请使用 MATCH (MATCH) 连同函数 指数 (指数)。
示例 1:在未排序列表中查找元素
对于未排序的列表,您可以使用 0 作为参数值 比赛类型 (match_type) 搜索完全匹配。 如果要查找文本字符串的完全匹配,可以在搜索值中使用通配符。
在下面的示例中,要查找月份在列表中的位置,我们可以使用通配符写出整个或部分月份的名称。
=MATCH(D2,B3:B7,0)
=ПОИСКПОЗ(D2;B3:B7;0)
作为论据 查找数组 (lookup_array) 你可以使用一个常量数组。 在下面的示例中,在单元格 D5 中输入了所需的月份,月份的名称被替换为函数的第二个参数 MATCH (MATCH) 作为常量数组。 例如,如果您在单元格 D5 中输入较晚的月份, 十月 (十月),那么函数的结果将是 #在 (#不适用)。
=MATCH(D5,{"Jan","Feb","Mar"},0)
=ПОИСКПОЗ(D5;{"Jan";"Feb";"Mar"};0)
示例 2:将学生成绩从百分比更改为字母
您可以使用该功能将学生成绩转换为字母系统 MATCH (匹配)就像你做的那样 VLOOKUP (VPR)。 在此示例中,该函数与 选择 (CHOICE),它返回我们需要的估计值。 争论 比赛类型 (match_type) 设置为等于 -1, 因为表中的分数是按降序排列的。
当论证 比赛类型 (match_type) 是 -1,结果是大于或等于期望值的最小值。 在我们的示例中,所需的值是 54。由于分数列表中没有这样的值,因此返回与值 60 对应的元素。 由于 60 在列表中排在第四位,因此函数的结果 选择 (SELECT) 将是位于第 4 位的值,即单元格 C6,其中包含分数 D。
=CHOOSE(MATCH(B9,B3:B7,-1),C3,C4,C5,C6,C7)
=ВЫБОР(ПОИСКПОЗ(B9;B3:B7;-1);C3;C4;C5;C6;C7)
示例 3:为 VLOOKUP (VLOOKUP) 创建灵活的列选择
赋予功能更多的灵活性 VLOOKUP (VLOOKUP)您可以使用 MATCH (MATCH) 来查找列号,而不是将其值硬编码到函数中。 在以下示例中,用户可以在单元格 H1 中选择一个区域,这就是他们要查找的值 VLOOKUP (VPR)。 接下来,他们可以在单元格 H2 中选择月份,函数 MATCH (MATCH) 将返回对应于该月的列号。
=VLOOKUP(H1,$B$2:$E$5,MATCH(H2,B1:E1,0),FALSE)
=ВПР(H1;$B$2:$E$5;ПОИСКПОЗ(H2;B1:E1;0);ЛОЖЬ)
示例 4:使用 INDEX (INDEX) 查找最接近的值
功能 MATCH (MATCH) 与函数结合使用效果很好 指数 (索引),稍后我们将在本次马拉松比赛中更仔细地研究它。 在这个例子中,函数 MATCH (MATCH) 用于从几个猜测的数字中找到最接近正确的数字。
- 功能 ABS 返回每个猜测和正确数字之间的差的模数。
- 功能 闵 (MIN) 找到最小的差异。
- 功能 MATCH (MATCH) 查找差异列表中最小差异的地址。 如果列表中有多个匹配值,则返回第一个。
- 功能 指数 (INDEX) 从名称列表中返回与该位置对应的名称。
=INDEX(B2:B5,MATCH(MIN(ABS(C2:C5-F1)),ABS(C2:C5-F1),0))
=ИНДЕКС(B2:B5;ПОИСКПОЗ(МИН(ABS(C2:C5-F1));ABS(C2:C5-F1);0))