打开APP
userphoto
未登录

开通VIP,畅享免费电子书等14项超值服

开通VIP
强大的查找定位函数match的用法

今天说一个查找定位函数match的用法,它是按特定的顺序搜索特定的项,然后返回该项在此区域或数组中的相对位置,经常与其他查找引用函数结合使用,比如index,vlookup,offset等。

-01-

函数说明

它的函数结构如下图所示,可以看到一共有3个参数。

lookup_value  必需。要在lookup_array中匹配的值。可以为值(数字、文本或逻辑值)或对数字、文本或逻辑值的单元格引用。

lookup_array    必需。要搜索的单元格区域或数组。此参数单元格区域必须为一行或者一列,数组的话必须为一维数组,否则返回错误值。

match_type   可选。数字 -1、0 或 1。match_type 参数指定Excel如何将 lookup_value 与 lookup_array 中的值匹配。此参数的默认值为 1。也就是查找匹配的方式。


下面是第3参数的不同查找方式:

  • 1或省略 MATCH 查找小于或等于 lookup_value 的最大值。lookup_array 参数中的值必须以升序排序。

  • 0   MATCH 查找完全等于 lookup_value 的第一个值。lookup_array 参数中的值可按任何顺序排列。

  • -1  MATCH 查找大于或等于 lookup_value 的最小值。lookup_array 参数中的值必须按降序排列。

MATCH返回匹配值在lookup_array中的位置而非其值本身。例如,MATCH("b",{"a","b","c"},0)返回2,即“b”在数组 {"a","b","c"} 中的相对位置。而且当第3参数为0,即精确查找时,第一参数支持通配符。

-02-

示例解释

在C1单元格中输入如下公式,结果返回3。意思是在A1:A7这个区域中查找5,找到后返回5在这个区域中的相对位置,也就是3。发现有2个5,但只返回第一个5的位置。第3参数为0,是精确查找。如果在这个区域中没有5,会返回错误值,如下第2图所示。


在C1单元格中输入如下公式,结果返回3。此时第3参数为1,是模糊查找,查找区域必须为升序排列。在A1:A7这个区域中查找5,找不到,就找比它小的最大值4,返回4在这个区域中的位置也就是3。

在C1单元格中输入如下公式,结果返回6。此时第3参数为-1,是模糊查找,查找区域必须为降序排列。在A1:A7这个区域中查找9,找不到,就找比它大的最小值10,返回10在这个区域中的位置也就是6。

-03-

具体应用

1.计算不重复的个数

在A列中有一些字母,求不重复的有几个。公式为C8=SUM(--(MATCH(A8:A15,A8:A15,)=ROW(A8:A15)-7))。这里是match的数组用法。MATCH(A8:A15,A8:A15,)这部分是查找A8:A15中每一个单元格在A8:A15这个区域中的位置,形成一个数组。与ROW(A8:A15)-7这个数组进行比较,相等的就是第一次出现的,也就是不重复的值。最后将其求和。

2.将不重复的值提取出来

还是上面那个题目,现在要求将不重复的值一一提取出来。这里方法有2种,公式都比较长。第一个公式为D8=IFERROR(INDEX(A:A,SMALL(IF(MATCH(A$8:A$15,A$8:A$15,)=ROW(A$8:A$15)-7,ROW(A$8:A$15)),ROW(A1))),"")。第1个题目,我们已经将不重复的值进行比较了,如果相等就是不重复的。现在如果相等就让它返回它的行号,然后用small这个函数从小到大提取不重复值第一次出现的行号,最后用index返回不重复的值。iferror用来规避错误值。

第二个公式为E8=IFERROR(INDEX(A:A,SMALL(IF(COUNTIF(OFFSET(A$8,,,ROW($1:$8)),A$8:A$15)=1,ROW(A$8:A$15)),ROW(A1))),"")。这个公式比较复杂,用到了offset的多维引用,也是为了返回不重复值第一次出现的行号,后面一样是用small和index。最开始是想要用公式=COUNTIF(A$8:A8,A8)来确定每个单元格的值是第几次出现的,所有第一次出现的就是不重复的值。后来发现这个公式用数组不好实现,就想到用offset试一下,结果用offset要用到多维引用,而且还实现了。当然也归功于countif,它能对多维引用进行降维计算。

好了,今天虽说讲了match这个函数的基本用法,但是举得例子比较深奥,我觉得对于初学者不太合适,抱歉了。

本站仅提供存储服务,所有内容均由用户发布,如发现有害或侵权内容,请点击举报
打开APP,阅读全文并永久保存 查看更多类似文章
猜你喜欢
类似文章
【热】打开小程序,算一算2024你的财运
Excel函数教程
Vlookup函数实例(全)
轻松成为办公高手
VLOOKUP函数应该怎么用,看完你就明白了~
Lookup引用合并单元格
Excel如何用函数公式提取每天第一次和最后一次打卡时间?你会吗
更多类似文章 >>
生活服务
热点新闻
分享 收藏 导长图 关注 下载文章
绑定账号成功
后续可登录账号畅享VIP特权!
如果VIP功能使用有故障,
可点击这里联系客服!

联系客服