分享

大话《Excel公式与函数》第二十四回——MATCH函数

 四叶草的期望 2016-05-27



MATCH函数主要用于查找值在指定范围中的位置序号。当数据存在时,则返回具体的位置序号,否则返回“#N/A”错误。如果有表亲需要从一列数据中确定某个值的位置时,不防一起来用用MATCH吧!


MATCH()函数


  • 功能解析

在单元格区域中搜索指定项,然后返回该项在单元格区域中的相对位置。

例如,区域A1:A5中包含值3612312,如果公式=MATCH(12,A1:A5, 0),计算结果为3,即值12是单元格区域A1:A5中的第3项。到底各参数功能及语法格式如何使用,请往下看。

 

  • 语法格式

MATCH(lookup_value,lookup_array, [match_type])

 

参数说明:

lookup_value必需。要在数组/区域中查找的值,该参数可以是数值、文本、逻辑值或单位格引用。

lookup_array必需。要查找的单元格区域。

match_type可选。为数字-101,默认(省略)为1

                            

注意事项:

  • 进行文本值的查找时,MATCH函数不区分大小写字母。

  • 如果第三个参数match_type0时,且查找值(lookup_value参数)为文本时,可以在查找值(lookup_value参数)中使用通配符?(问号)和*(星号)。问号匹配任意单个字符;星号匹配任意一串字符。如果要查找实际的问号或星号,请在字符前输入波形符(~)

 

  • 案例演示

解释太多反而复杂,还是案例够直接,下面通过案例来理解MATCH函数的功能。

案例:如表所示,判断员工的保险是否重复缴纳,并填写在最后一列中。


通过观察表中内容,很容易看出员工张丽的保险被重复缴纳了,如果面对海量的数据我们配合函数公式将得到更好的解决,那么此案配合MATCH函数如何判断出是否重复呢?

F2单元格中输入公式:=IF(MATCH(B2,$B$2:$B$9,0)=ROW()-1,'','重复提缴'),向下填充即可完成计算,结果即如上图所示(这里不考虑其它因素,只就姓名的重复,当然更好的是用员工号作为查找对象)。

首先,来看公式中MATCH函数部分:MATCH(B2,$B$2:$B$9,0),通过MATCH函数将各行中对应的员工姓名,在$B$2:$B$9区域中进行查找匹配,并返回对应的位置序号分别是12345674,聪明的表妹儿一下就看出来了怎么有两个4,可能此处有蹊跷,通过观察发现,处在第4位的正是员工张丽,而在第8位时又重复出现了员工张丽,由于MATCH函数仅返回第一个值的位置序号4,所以只要有相同的值,它都显示第一个位置序号也即表示查找值重复。

在这个烧脑的描述之后,得出只要MATCH返回的位置序号与该区域中数据本身位置序号不一致时即为重复(数据自身位置序号:王巍-1、刘洋-2、王佩-3、张丽-4……林仁-7、张丽-8),所以这里又用了ROW函数来判定数据自身位置序号,ROW()是用于计算当前区域的行序号,如在F2单元格中输入公式=ROW(),计算结果为2,即第2行的意思,那么ROW()-1你应该懂起是什么意思了吧,即为了使MATCH函数计算的位置序号与它自身在序列中的位置序号保持一一对应(如MATCH(王巍……)的位置序号是否=ROW()-1,即1)。

最后,通过IF函数进行判定,位置序号相等即留空,否则不相等即为重复。

哎呀妈,操作起来简单,描述起来有点晕,表哥表妹还是自己操刀吧!操作胜过万千言语。

    本站是提供个人知识管理的网络存储空间,所有内容均由用户发布,不代表本站观点。请注意甄别内容中的联系方式、诱导购买等信息,谨防诈骗。如发现有害或侵权内容,请点击一键举报。
    转藏 分享 献花(0

    0条评论

    发表

    请遵守用户 评论公约

    类似文章 更多