关闭

女兔帮

史上最全MATCH函数教程

更新时间:2025-02-10 23:03:09 浏览:

友情提醒:信息内容由网友发布,本站并不对内容真实性负责,请自鉴内容真实性。

史上最全MATCH函数教程

点击上方蓝色字样即可关注 Excel 函数和公式

置顶公众号或者设为星标,否则可能收不到文章

进入公众号发送功能名称即可免费获取相应教程

个人微信号 | (ID:)

微信公众号 | Excel函数和公式(ID:)

进入公众号发送功能名称或关键字即可免费获取相应教程

关键字:匹配

史上最全MATCH函数教程

MATCH函数是Excel中广泛使用的查找引用函数,MATCH函数除了本身具有返回查找数据相对位置的功能外,还可以与很多函数进行组合使用,在工作中展现Excel的强大威力。

比如著名的INDEX+MATCH组合就可以轻松应对很多高级的应用案例,可见MATCH函数无疑是职场中必备的函数。

为了让大家了解MATCH函数不为人知的强大功能,本文整理了多种MATCH函数应用方法,方便大家在实际工作中直接参考使用。如果一次看不完,可以分享到朋友圈留个记号。

如果你看完觉得还不错的话,记得点赞并分享给你的朋友哦,我会根据大家的反馈来调整文章的内容和文笔。

除了本文内容之外,如果你想全面、系统、快速提升自己的Excel技能,少走弯路,请点击下方二维码或点击文末“阅读原文”,进入知识商店。

不同内容和方向的Excel课程

长按识别二维码↓进入知识商店获取

(长按识别二维码)

语法分析和基本用法

MATCH 用于返回所要查找的数据在区域中的相对位置。下面介绍其语法和参数使用方法。

语法

匹配(,, [])

简单来说,可以表示为

MATCH(搜索数据、搜索区域、搜索方法)

MATCH 函数语法具有以下参数:

**个参数:要匹配的值。例如,如果您想在电话簿中查找某人的电话号码,您应该使用姓名作为查找值,但实际上您想要的是电话号码。

**个参数可以是值(数字、文本或逻辑值)或对数字、文本或逻辑值的单元格引用。

第二个参数:要搜索的单元格范围。

第三个参数:可选。数字 -1、0 或 1。该参数指定 Excel 如何匹配 中的值。此参数的默认值为 1。

下表描述了该函数如何根据参数的设置查找值。

对于非高级用户可以跳过此部分,直接看后面的例子,因为99%的情况下,第三个参数0就足以满足日常工作需要了!

行为

1 或省略

MATCH 查找小于或等于某个值的**值。参数中的值必须按升序排序,例如:...-2、-1、0、1、2、...、AZ、FALSE、TRUE。

MATCH 查找**个与参数中的值完全相等的值。参数中的值可以是任意顺序。

-1

MATCH 查找大于或等于某个值的最小值。参数中的值必须按降序排列,例如:TRUE、FALSE、ZA、...2、1、0、-1、-2、... 等等。

MATCH 函数返回第二个参数中匹配值的位置,而不是值本身。例如,MATCH("b",{"a","b","c"},0) 返回 2,即“b”在数组 {"a","b","c"} 中的相对位置。

匹配文本值时,MATCH 函数不区分大写和小写字母。

如果 MATCH 函数未成功找到匹配项,它将返回 #N/A 错误值。

看了这么多的文字,很多同学是不是感觉有些头晕了呢?

以下两个简单易学的示例将帮助您在几秒钟内理解MATCH函数。

我们首先来看一个垂直搜索和定位的案例。

在 C2 中输入以下公式。

=MATCH("王红强",A:A,0)

**个参数:需要搜索的数据,这里是“王洪强”

第二个参数:搜索位置。这里我们在 A 列搜索,因此我们写 A:A

第三个参数:精确匹配搜索,写0

综合起来,就是在A列找到与“王红强”完全匹配的数据,并返回其位置。

公式结果为8,代表找到数据,且位于第8行。

现在我们了解了垂直搜索,让我们来看一个水平搜索和定位的案例研究。

在 C2 中输入以下公式。

=MATCH("梨",1:1,0)

**个参数:需要搜索的数据,这里是“pear”

第二个参数是搜索的位置。这里我们在**行搜索,所以我们写 1:1。

第三个参数:精确匹配搜索,写0

合起来就是在**行找到与“梨”完全匹配的数据,并返回其位置。

公式结果为4,代表找到了数据,并且位于第4列,也就是D列。

是不是很简单呢?现在你已经学会了MATCH函数最基本的应用。

后续还有更多精彩应用案例等着大家~

模糊条件搜索

在上一节中,我们学习了MATCH函数最基本的使用方法(按条件精确匹配进行查询),但是在工作中我们经常会遇到查询条件不是那么明确,只能根据一些已知条件进行模糊查询的情况。

下面的示例演示了 MATCH 函数根据模糊条件进行搜索的能力。

上图中A列是各个年份的产品批号,包括2016年、2017年,现在我们需要找出2017年的批号从哪一行开始出现。

在单元格 C2 中输入以下公式。

=MATCH("*2017*",A:A,0)

如何查找特殊符号

在上一篇教程中我们学习了使用MATCH函数进行模糊条件查询,但是其只适用于普通字符的字符串,当需要查找的数据中含有一些特殊字符(如星号、问号、波浪号等)时,原有的公式结果就会出现错误。

那么,我们该如何处理这些特殊符号呢?

史上最全MATCH函数教程(图1)

下面根据实际案例进行解释。

上图中,A列为数据源区域,里面有很多由数字和符号组成的激活码,现在需要找到激活码“*5~?”的位置。

如果使用常规的搜索方法,例如以下公式,它将返回不正确的结果。

错误公式:=MATCH("*5~?,A:A,0)

那么,我们应该怎样修正这个公式才能得到正确的结果呢?

在单元格 C2 中输入以下公式。

正确的公式:=MATCH("~*5~~~?,A:A,0)

提取最后一个文本数据的行号

在前面的章节中,我们掌握了MATCH的基本检索方法、基于模糊条件的检索方法以及检索内容中特殊符号的处理方法。

今天我们来看一个通过反向查找提取文本数据位置的案例。

上图中,A:B列为数据源,里面有员工编号和销售员姓名,需要提取B列最后一段文字的行号。

在 D2 中输入以下公式。

=MATCH(CHAR(1),B:B,-1)

根据条件提取最后一条数据

在前面的教程中,我们掌握了MATCH函数的各种查找方法,学习了如何反向提取数据位置。今天,我们来学习条件查找下的MATCH技巧。

按照惯例,我会先从案例入手,然后再通过比较来解释。

上图左侧的数据源里面有销售员的ID,姓名,以及销售额,现在我们需要找出最后一个销售额大于5万的销售员的行号。

在E2中输入以下数组公式,然后按组合键。

=MATCH(1,0/(C:C>50000))

计算**数据的数量

在前面的教程中,我们介绍了单独应用MATCH函数的方法,其实MATCH函数可以与其他函数配合使用,发挥更大的威力。

今天我们将介绍一种统计**值数量的方法。

对于上述情况,请参见下图

上图中,左边是数据源,包括值班日期和值班人员姓名,值班人员中有重复的,也就是有的人值班的时间不止一天,现在我们需要计算值班人数(去重后)。

在D2中输入数组公式,按组合键。

=COUNT(0/(MATCH(B2:B8,B2:B8,0)=ROW(1:7)))

统计两列中相同数据的数量

曾经有人问过我一个问题:

Excel中哪个函数最强大?

Excel中最强大的函数是什么?

我不知道你会如何回答这种问题。我认为关键在于谁在使用 Excel。其实,没有**的功能,只有**的人!

有时看似简单的功能,只要灵活运用,就能有多种用途。

这节课我们来看一个比较两列数据差异的案例,出现的两个函数大家都很熟悉,一个是COUNT,一个是MATCH,但是别小看它们,不信的话先试试自己能不能搞定这道题。

上图左边是数据源,包括一个班级两次考试前10名学生的数学和语文成绩。因为每门科目的成绩是分开排名的,所以数学前10名的学生和语文前10名的学生并不完全相同。

现在我们需要做的是比较两门学科前 10 名的学生,并找出相同的数字。

在单元格E2中输入数组公式,然后按组合键。

=COUNT(匹配(B2:B11,C2:C11,0))

多条件计数统计

在上一节中,我们介绍了将 MATCH 函数与 COUNT 函数结合使用的情况,轻松比较两列数据并统计相同值的数量。

在本节中我们将介绍这两个功能的另一种奇妙应用。

工作中经常会遇到多条件计数的需求,处理的方法也有很多种,下面我们来看看这种情况下 MATCH 是如何处理多条件计数的。

上图左侧是数据源区域,包括发货日期、发货产品、发货经销商名称。现在我们需要统计其中两家经销商(大地集团和希望集团)的苹果发货总数。

在单元格E2中输入数组公式,然后按组合键。

=COUNT(MATCH(B2:B8&C2:C8,"苹果"&{"大地集团","希望集团"},0))

根据就餐时间自动判断用餐类型

今天我们就通过一个真实的案例来介绍一下函数灵活应用的思路和妙处。

上图左侧是数据源,黄色区域是需要输入公式进行计算的单元格。

数据源中已知用餐日期和时间,需要根据用餐时间和规则自动判断用餐类型。

规则如下:

1、早餐时间:5:30-8:30

2. 午餐时间:11:30-13:30

3.晚餐时间:17:30-20:30

在C2中输入以下公式,并将公式向右向下拖动以填充到黄色区域。

=IF(MATCH($B2*48,{11;23;35})=(A1),"√","")

按多个权重排序

通过前面九课我们已经知道了MATCH函数不仅可以提取数据位置,还可以按照条件查询,比较两列数据的差异。今天我们结合一个实例来演示一下MATCH函数按不同权重进行多条件排序的技巧。

上图左侧是数据源区,里面保存着某一个项目中各个队伍所获得的金牌数、银牌数、铜牌数,现在我们需要根据获得的奖牌数计算出各个队伍的总排名。

排名规则如下:

1.首先,按照金牌数从多到少进行排序。

2. 对于金牌数相同的队伍,比较银牌数。

3、金牌、银牌数量相同时,比较铜牌数量。

其实这是一个加权多条件排序问题。

选择单元格范围E2:E8,输入范围单元格数组公式,按组合键。

=MATCH(MMULT(B2:D8*10^{4,2,0},{1;1;1}),LARGE(MMULT(B2:D8*10^{4,2,0},{1;1;1}),ROW(1:7)),0)

希望这篇文章能帮到你!如果记不住的话可以发朋友圈,自己tag一下。

我花了18个月的时间在Excel训练营中把Excel函数公式相关的各种技巧整理成高清的视频讲解,并提供配套课件方便学员操作和练习。

函数初级班为第二期训练营,函数高级班为第八期训练营,函数中级班为第九期训练营,从入门到进阶技术均有高清视频讲解,请点击下节二维码进入知识商店查看详细介绍。

今天就到这里,希望这篇文章能帮到你!更多实用文章,请添加下方小助手。

如果你喜欢这篇文章

你可能感兴趣的