站内搜索:

{match函数}:返回符号特定值特定顺序的项在数组中的相对位置

浏览人数:

一、函数英语单词

match英 [mætʃ] 美 [mætʃ]

excel函数中,match函数我们取:相匹配的结果位置的意思来进行理解。

二、函数含义和参数

match函数的分类属于:查找与引用函数
打开excel表格,点击编辑栏前的插入函数图标fx,弹出插入函数窗口,在选择类别中选择分类:查找与引用函数,可看到该函数的官方解释:



函数:的含义和参数:
返回符号特定值特定顺序的项在数组中的相对位置
match(lookup_value,lookup_array,match_type)


解释:
一共有3个参数
第1个参数:要查找的值。lookup_value:可以为数值(数字、文本或逻辑值)或对数字、文本或逻辑值的单元格引用。可以包含通配符、星号 (*) 和问号 (?),可以是一个区域(性质为数组)
第2个参数:查找的值所在的列,行,此处重点是,只能为1行或者1列。lookup_array:可能包含有所要查找数值的连续的单元格区域,区域必须是某一行或某一列,即必须为一维数据,引用的查找区域是一维数组。
第3个参数:有-1,0,1三种参数,默认使用0,精确查找,1表示升序排列,-1表示降序排列。
对于区域中存在多个值的情况,使用第3个参数为0时,只返回查找到的值在区域中的第一个位置。

三、函数的使用方法及实例

实例一:
使用录入的姓,名1,名2,自动生成姓名2个字的,以及2个或者3个字的表,然后使用match函数来演示各种情况。
gif动画演示教程如下:


当I6的内容为序号时,区域就是为A列
=MATCH(I6,A:A,0)

当I6的内容为姓名时,区域就是为G列
=MATCH(I6,G:G,0)

其中,不管是A列,还是G列,区域只为1列,如果是行,也只能为1行。返回的,是此区域中,查找到第1个参数所在的行数。

当I6的内容为性别时,区域就是H列
=MATCH(I6,H:H,0)
这个演示的,是当值有多个时,match,配合第3个参数0使用时,只返回查找到的第1个值所在的行数。

实例二:

现有A列原始数据,要求查询出此列数据中第一次出现的位置,如下图:



macth函数支持数组,支持区域作为查询对象,所以,我们使用了同一个区域为2个参数,最后0使用精确查找就可以获得我们想要的结果。

b2:b16区域的数组公式为:
=MATCH($A$2:$A$16,$A$2:$A$16,0)

在此基础之上,如果再配合if判断对应的行号,就可以获取出去重的效果。

实例三:

match只能单行,或者单列,应用的场景就会少很多,如下面的场景不例,假设有一个班级表,需要查询某个学生所在的班级情况。


D34单元格公式:
=SUM(($B$27:$D$29=C34)*($A$27:$A$29))

区域=用来判断是否存在此姓名,如果存在,则为真值,乘对应的行号,得出对应的值,再配合sum得出行号,因为假值在excel中对应的都是0,所以求和是求不出来的,是可以得出正确的结果。
注意,最后数组结束是使用ctrl+shift+回车。

实例四:

除了使用sum数组的方式来实现外,还可以使用sumproduct函数,专门就是数组(多行,多列单计算)解决此问题。


E34单元格公式:
=SUMPRODUCT(($B$27:$D$29=C34)*$A$27:$A$29)

注意:此公式是不需要数组结束的,

附:如果要求班级,可以使用column函数,再配合offset或者是index。
 

制作表格zhizuobiaoge.com
Copyright@all rights reserved