比VLOOKUP函数好用10倍的函数Index+match函数怎么用?

龘龘221167238


INDEX函数是用来根据索引位置,定位单元格数据的一个函数,它的使用格式为:

INDEX(array/reference,row_num,[col_num])
  • array/reference参数指的是需要定位的数组或者单元格区域。

  • row_num参数指的是要定位到reference区域的第几行。

  • col_num参数可以省略,指的是要定位到reference区域的第几列。

如果reference参数引用的是一行或者一列,那么第3个参数就可以省略,第2个参数指的就是对应的第几个单元格。如果reference参数如果引用的是一个区域,则row_num和col_num都不能省略,因为要定位到几行几列。

MATCH函数是一个根据所给内容在指定范围查找,然后返回对应范围索引的函数,它的使用格式为:

MATCH(lookup_value,lookup_array,[match_type])
  • lookup_value:指的是我们需要查找的值。

  • lookup_array:指的是搜索的范围,注意这里只能是一行或者一列的引用,不能多行多列。
  • match_type:匹配模式,0表示精确匹配,1和-1都表示模糊查找。一般情况下用的最多的是参数值为0的情况,即精确查找!

下面就具体来说说INDEX+MATCH函数具体的使用方法。如下表所示,我们需要在A:H范围根据姓名查找对应的“语文”科目成绩。我们在K2单元格中输入如下公式:

=INDEX(C:C,MATCH(J2,B:B,0))

公式的意思是,先用MATCH函数在B:B的范围查找J2单元格的值(即“马娅娅”),找到是在B列的第4行,因此MATCH返回数字索引4。然后用INDEX函数定位C列数据索引为4的单元格,即85,这样就完成了数据的查找!

关于INDEX+MATCH这对黄金组合的用法很多,可以在头条号【光速Excel】的文章列表中查看文章“Excel函数黄金组合之INDEX+MATCH深入解读”,详细了解它们的使用方法!


光速Excel



Excel函数公式:最强查找引用INDEX+MATCH实用技巧解读


VLOOKUP虽然是大家最常用的查找引用函数,但在很多场景下都不足以满足我们的实际工作要求,例如从右向左查找,多条件查找等,此时需要其他函数的配合来完成。

而这些问题对于INDEX+MATCH组合来说非常的简单,虽然VLOOKUP函数的查询功能很强大,但是在INDEX+MATCH组合面前也要逊色几分。
一、INDEX+MATCH:单条件常规查询。
VLOOKUP法:
Excel函数公式:最强查找引用INDEX+MATCH实用技巧解读
方法:
1、选定目标单元格。
2、输入公式:=VLOOKUP($H$4,$B$3:$E$9,COLUMN(C2)-1,0)。
3、Ctrl+Enter填充。
4、选定数据源,【开始】-【条件格式】-【新建规则】-【使用公式确定要设置的单元格格式】。
5、输入公式:=($h$4=$b3)。
6、单击【格式】-【填充】。选取填充色,【确定】。
INDEX+MATCH法:
Excel函数公式:最强查找引用INDEX+MATCH实用技巧解读
方法:
1、选定目标单元格。
2、输入公式:=INDEX($B$3:$E$9,MATCH($H$8,$B$3:$B$9,0),MATCH(I$7,$B$2:E$2,0))。
3、Ctrl+Enter填充。
4、选定数据源,【开始】-【条件格式】-【新建规则】-【使用公式确定要设置的单元格格式】。
5、输入公式:=($h$8=$b3)。
6、单击【格式】-【填充】。选取填充色,【确定】。
二、INDEX+MATCH:单条件反向查询。
VLOOKUP函数法:
Excel函数公式:最强查找引用INDEX+MATCH实用技巧解读
方法:
1、选定目标单元格。
2、输入公式:=VLOOKUP(I4,IF({1,0},F3:F9,B3:B9),2,0)。
3、Ctrl+Enter填充。
4、选定数据源,【开始】-【条件格式】-【新建规则】-【使用公式确定要设置的单元格格式】。
5、输入公式:=($I$4=$F3)。
6、单击【格式】-【填充】。选取填充色,【确定】。
INDEX+MATCH法:
Excel函数公式:最强查找引用INDEX+MATCH实用技巧解读
方法:
1、选定目标单元格。
2、输入公式:=INDEX(B3:B9,MATCH(I8,F3:F9,0))
3、Ctrl+Enter填充。
4、选定数据源,【开始】-【条件格式】-【新建规则】-【使用公式确定要设置的单元格格式】。
5、输入公式:=($i$8=$b3)。
6、单击【格式】-【填充】。选取填充色,【确定】。
三、双条件查找。
VLOOKUP函数法:
Excel函数公式:最强查找引用INDEX+MATCH实用技巧解读
方法:
1、选定目标单元格。
2、输入公式:=VLOOKUP(J4&K4,IF({1,0},$B$3:$B$9&$C$3:$C$9,$G$3:$G$9),2,0)。
3、Ctrl+Shift+Enter填充。
4、选定数据源,【开始】-【条件格式】-【新建规则】-【使用公式确定要设置的单元格格式】。
5、输入公式:=($J$4=$B3)。
6、单击【格式】-【填充】。选取填充色,【确定】。
INDEX+MATCH法:
Excel函数公式:最强查找引用INDEX+MATCH实用技巧解读
方法:
1、选定目标单元格。
2、输入公式:=INDEX(G3:G9,MATCH(J8&K8,B3:B9&C3:C9,0))。
3、Ctrl+Shift+Enter填充。
4、选定数据源,【开始】-【条件格式】-【新建规则】-【使用公式确定要设置的单元格格式】。
5、输入公式:=($j$8=$b3)。
6、单击【格式】-【填充】。选取填充色,【确定】。
四、三条件查找。
VLOOKUP函数法:
Excel函数公式:最强查找引用INDEX+MATCH实用技巧解读
方法:
1、选定目标单元格。
2、输入公式:=VLOOKUP(K4&L4&M4,IF({1,0},$B$3:$B$9&$C$3:$C$9&$D$3:$D$9,$H$3:$H$9),2,0)
3、Ctrl+Shift+Enter填充。
4、选定数据源,【开始】-【条件格式】-【新建规则】-【使用公式确定要设置的单元格格式】。
5、输入公式:=($k$4=$B3)。
6、单击【格式】-【填充】。选取填充色,【确定】。
INDEX+MATCH法:
Excel函数公式:最强查找引用INDEX+MATCH实用技巧解读
方法:
1、选定目标单元格。
2、输入公式:=INDEX(H3:H9,MATCH(K8&L8&M8,B3:B9&C3:C9&D3:D9,0))
3、Ctrl+Shift+Enter填充。
4、选定数据源,【开始】-【条件格式】-【新建规则】-【使用公式确定要设置的单元格格式】。
5、输入公式:=($k$8=$b3)。
6、单击【格式】-【填充】。选取填充色,【确定】。

Excel函数公式


都说没用过Vlookup,那一定没用过Excel函数。直接体现出Vlookup函数在Excel中的地位。Vlookup函数是Excel的入门函数,也是使用频率最高的函数。

只是,Vlookup在很多时候,如:自右向左查询、横向查询、动态查询等情况下,Vlookup略显复杂。而此时,Index+Match组合就显得灵活多了。

Vlookup

先来看看查询函数vlookup,这是Excel中最常用也最基础的函数。

公式用法:VLOOKUP(找什么,在哪找,位于区域的第几列,精确还是模糊找)


Index+match

INDEX(array, row_num, [column_num])

MATCH(lookup_value, lookup_array, [match_type])

更多函数

更多函数的详细用法,关注我哦!


Excel大全


当决定使用哪种垂直查询公式时,大多数Excel专家认为INDEX MATCH是比VLOOKUP更好的公式。然而,许多人仍然使用VLOOKUP,因为它是一个更简单的公式。这个问题的一个主要驱动因素是,大多数人仍然不能完全了解从VLOOKUP换到INDEX MATCH的好处,没有这样的理解,他们不愿意花时间去学习更复杂的公式。这篇文章的目的是详细描述使用INDEX MATCH的所有好处,并说服你应该使用INDEX MATCH专门用于所有的垂直查找。

如果您不知道如何使用INDEX MATCH,请学习相关的知识。

动态列引用可以避免更少的错误

INDEX MATCH和VLOOKUP之间的关键区别在于VLOOKUP需要静态列引用,而INDEX MATCH使用动态列引用。使用VLOOKUP,大多数人将输入一个特定的静态数字,以指示他们要从哪个列返回。当您使用INDEX MATCH时,该公式允许您手动选择要从哪个列中返回数据。

导致犯更少错误的原因是因为当您遵循INDEX MATCH语法时,您可以直接单击包含要返回的值的字段

使用VLOOKUP,您必须指定查找范围表数组,然后指定列引用(就是返回列的数值),以指明要从中提取数据的列。

当你有一个很大的表数组,在拖动查找范围的时候,你会看到数据范围有几行几列,你可以看到你想返回的数据列在数据范围的那一列,然后记下来,再填写公式里面,这是一个小小的差异,但这个额外的步骤无疑会有可能导致错误,当您使用INDEX MATCH时,不需要这样的计数。

插入列不影响结果

使用INDEX MATCH超越VLOOKUP的最大好处是,使用INDEX MATCH,您可以在表数组中插入列,而不会影响使您的查找结果。任何时候使用大型数据集,您很可能需要返回编辑,并有可能插入一个新的列。使用VLOOKUP,任何插入或删除列将改变公式的结果。

以下列VLOOKUP示例。在这里,我们设置了从数据表中返回State值的公式。因为它是一个VLOOKUP公式,我们指定返回第4列的数据。

如果我们在table数组的中间插入一个列,那么新的结果就是“Seattle”;我们不再能从State列提取正确的值,所以必须更改列引用。

再来看下插入一列,用INDEX MATCH公式是否还能得到正确的解决,答案是肯定的,没问题。

INDEX MATCH具有插入列免疫功能,因此您可以插入和删除列,而不用再去更新每个关联的查找公式。

更容易拖动和复制

在使用大型数据集时,很少只需编写一个查询公式就完事了;您可能需要将公式拖放到多个单元格以执行多个查找。例如,假设对于特定的ID,我想从表中返回一系列与表中显示相同的值。当我尝试拖动并复制标准的VLOOKUP公式(在查找值和表数组上都有一个引用锁)时,查找不起作用,因为它只为每个条目提取相同的值。这个缺陷再次是由VLOOKUP引起的,需要一个特定的列引用输入作为你的返回值,你需要为city指定列引用为3,state指定列引用为4.

使用INDEX MATCH,因为您可以将返回列设置为float(不用美元符号锁定它),当您复制公式时,返回列将移动,为您显示不同的字段。

没有数组限制

VLOOKUP的另一个关键限制是,它需要您指定一个方形表数组,其中列引用不能超越,一般当您将新的字段附加到您的原始数据表之外的数据集时会遇到这种情况,来看下面的例子:

如果我在这个数据集追加一个新列,就不能用我原来的VLOOKUP公式来自返回新加列的值。如果我把列引用改为“6”,但是我的原来表数组宽5列,所以返回一个错误。为了使公式正常的工作,就不得不更新每次添加新列后指定新的表数组,这样操作起来比较麻烦。


用Index+Match 公式,就没有这个问题。

自右向左查找(反向查找)

使用INDEX MATCH的主要优点之一是能够在数据表的右侧创建查找键。 通常通过在原始数据集中的字段上运行计算来创建新的查找键。 这些键代表INDEX MATCH语法中的查找列。 当使用INDEX MATCH时,您可以将这些新的查找键附加到表的右侧,并执行从右到左的查找来拉取要返回的值。 INDEX MATCH语法不关心您的查找列是否位于返回列的左侧或右侧。

使用VLOOKUP,因为您只能执行从左到右的查找,所添加的任何新查找键必须位于原始表数组的左侧。 因此,每次添加新的查找键时,必须将整个数据集向右移动一列。 这不仅令人讨厌,而且还会影响您在电子表格中创建的现有公式和计算,当然Vlookup可以执行从左到右的查找,会用到数组公式的公式。

可以有HLOOKUP的功能

这可能对于大多数用户不是多大的事,但它仍然值得一提。 VLOOKUP限制您仅在表数组上执行垂直查找。 例如,我无法在数据集顶部查找值,并执行水平查找。 为了可以水平查找,我得用HLOOKUP。但是使用INDEX MATCH完全可以做水平查找。

较低的处理需求

使用INDEX MATCH的处理优势在最新版本的Excel中被边缘化,因为软件的处理能力已经大大扩展。但是给每个人一个简短的历史课,我会详细说明这个好处。在某些Excel的旧版本中,该软件具有明显的处理限制,如果您构建了一个巨大的数据集,那将是显而易见的。在某些情况下,我需要查找数千行的值,以便我可以在一个大表中附加一个新列。一旦我添加了所有这些公式,软件将冻结并花费几分钟计算返回值。我最终不得不使用INDEX MATCH替换我的VLOOKUP公式,以加快计算速度。

这个差异的原因其实很简单。 VLOOKUP需要更多的Excel处理能力,因为它需要评估您选择的整个表格数组。使用INDEX MATCH,Excel只需要考虑查找列和返回列。使用较少的绝对单元格来考虑,Excel可以更快地处理这个公式。

再次,请注意,由于Excel的处理能力进行了改进,这种好处可能不再显着。但是,如果由于任何原因需要在电子表格中运行数千个查询公式,请确保使用INDEX MATCH。

结论

使用INDEX MATCH的一个缺点是显然难以学习,更难记住。 但是,通过阅读有关如何使用公式的简单教程,可以轻松解决这一障碍。

我现在使用INDEX MATCH专用于我的所有垂直查找。 不是因为它是一个更好的公式,而是它帮助我记住更复杂的语法。 一旦你做开始用并且体验到使用INDEX MATCH的好处,我保证你不会回到VLOOKUP。


Excel学习笔记


数据查找匹配每个职场人的必备的技能,大众情人 VLOOKUP函数可谓运用广泛!但是有些老司机可能会发现,这个函数在使用过程中会有诸多限制,比如,只能从左往右查询,数据格式要求非常高等等,这些问题是否困扰你?今天,技巧君介绍INDEX+MATCH组合函数,轻松解决VLOOKUP函数的缺陷!


原理解析

我们先来看一个熟悉的场景,在电影院 我们是怎么找到位置的:

如图所示,3排7座是往后数3排,再往右数7个位置就找到了


在EXCEL中,我们也是这样对单元格进行排"位置"的,我们把“排”称为“行”,用数字标记,把“座”称为列,用字母标记;与电影院不同的是,EXCEL中"行"要远多于“列”,并且是“列”号在前,上面所示的“3排7座”,我们用EXCEL中的标记方式就是:“G3”

上图中属性表中,我们可以看到,第一列是姓名,第二列是国籍,第三列是武力,第四列是智力;

如果我们要得到某个武将的武力值,由于武力固定在第三列,我们只需要知道武将在属性表第几行就可以了!

例如:关羽在属性表的第3行,那么他的武力值是C3单元格中的98。


INDEX+MATCH函数就是基于这个原理来使用的,INDEX的是你和EXCEL沟通的桥梁,告诉EXCEL你需要第几行第几列的数据,它返回给你;MATCH帮你找到武将的行号。

例如:关羽在第几行我们不知道,那么MATCH函数告诉你:MATCH("关羽\

Excel精选技巧


Index+Match组合函数替代VLOOKUP函数可以解决:当excel数据表包含的行和列比较多时,查找值时不用再去数行数或列数。

1、首先我们来看vlookup函数。

vlookup函数公式为:

=VLOOKUP(要查找的值、要在其中查找值的区域、区域中包含返回值的列号、精确匹配或近似匹配 – 指定为 0/FALSE 或 1/TRUE)。

其中第二个参数,查阅值应该始终位于所在区域的第一列。例如下面一张数据表,查找重庆的GDP。

公式为: =VLOOKUP("重庆\

Office办公君


刚学Excel函数时,相信大部分表亲,都奉Vlookup为神函数,最基础,也最常用,甚至天天用。确实,Vlookup在Excel中的地位是不可否认的,不会用,那就别说你用过Excel函数!

只是,在很多情况下,Vlookup用起来不够灵活,也略显麻烦。而,Index+Match就比Vlookup灵活多了!

Index+Match用法

用法:

INDEX(区域, 第几行);

MATCH(找什么, 在哪里找, 查找方式);

组合起来用,也不难,就是一个函数镶嵌而已,如下所示:

逻辑也不难,用match函数找到符合条件的单元格位置,然后用index找出该位置上的其他单元格。

查找多维区域,照样不难,如下:

两个match函数定位出行列,然后一个index搞定。

发现没,Index+Match的灵活,就在于,TA们不在乎你的目标单元格是在条件列的左侧还是右侧,而,Vlookup函数,目标值应该在右侧,若是找左侧单元格,则需要使用数组,这样就略显麻烦了。

普及下Vlookup函数基础用法

用法:vlookup( 找什么, 查找的范围, 返回哪一个值, 精确查找还是模糊查找 )

这就是我更喜欢Index+Match组合的原因。

希望这组函数的用法能帮到你!


Excel技巧精选


强大的index+match函数组合,胜过VLOOKUP函数


index函数语法:

index(单元格区域,行号,列号)

match函数语法:

match(查找值,查找区域,查找方式)


1. index+match单条件查找

在I2单元格输入公式:

=INDEX($D$2:$D$10,MATCH(H2,$B$2:$B$10,0))

公式解析:

index第一参数选择要返回的职务区域,使用match函数查找$B$2:$B$10小螃蟹所在的行号 ,index第三个参数省略默认为1


2. index+match多条件查找

在H2单元格输入公式:

=INDEX($C$2:$C$13,MATCH(F2&G2,$A$2:$A$13&$B$2:$B$13,0))

数组公式,按Ctrl+Shift+Enter键结束公式

<strong>

公式解析:

使用match(F2&G2,$A$2:$A$13&$B$2:$B$13,0)查找值将小螃蟹和空调连接,查找区域将姓名列和产品列连接为一列,即可查找到对应的行号


<strong>

3. 提取唯一值

在D2单元格输入公式:

=INDEX($A$2:$A$13,SMALL(IF(MATCH($A$2:$A$13,$A$2:$A$13,0)=ROW($1:$12),ROW($1:$12),14),ROW(A1)))

数组公式,按Ctrl+Shift+Enter键结束公式

公式解析:

MATCH($A$2:$A$13,$A$2:$A$13,0) 因为match查找是返回第一个符合条件的值,

所以结果是{1;2;1;4;5;4;1;2;4;1;5;5},再使用if函数后的结果{1;2;14;4;5;14;14;14;14;14;14;14} 利用SMALL函数提取第一个最小值,第二个最小值...

<strong><strong>

<strong>


excel函数教程


既然说到EXCEL函数,我想有必要推荐一个有用100倍的工具。当然也是免费的。(文末有名免费软件获取方法。)

更好的方法

VLOOKUP函数还是Index+match都是为了提升数据处理能力。

其实你可以用函数也完全可以不用函数,都能解决所要解决的问题。因为有更好的方法。这个工具,叫“云表”,兼容EXCEL操作方法,函数,公式,但是,不同的是,云表可以用来做管理软件,还不用编程。

实现多用户协同和数据共享

工作中,时常要进行数据收集,汇总,统计、分析、查找,也可能做各种报表,也可能涉及各种业务关联,常见的,进销存管理、人事行政考勤管理,生产管理,仓库管理等。用EXCEL就不一定很方便,尤其是数据量大,用户人数多时,涉及到数据共享,多人协同时,就搞不定了,无论你是什么函数也没有用,无论是多高的高手也没办法解决这些问题。

实现与第三方软件和硬件对接

但是用云表就可以了,小到制作表格,作报表管理软件,大到作多人分工协作的ERP等大型管理系统,都可能轻松搞定,只需要配置简单的中文公式(高中生就能做得到)

一键生成手机APP,实现移动办公

好了,赶快来使用吧,免费,不收钱。https://www.toutiao.com/a1628597648465927

各位注意了,凡是评论、转发、点赞的,另外赠送全功能进销存管理系统一套。


乐图软件


首先,该问题有哇众取宠之嫌,在日常工作中,因为VLookup函数更加简单、易用、直接,实际上VLookup函数的应用广泛程度是Index+Match函数组合的10倍。

说Index+Match函数比VLOOKUP函数好用,是因为Index+Match组合比单纯使用VLookup函数更加灵活,功能更加强大,而且在多列数据匹配查找时能通过合适的方法来改善计算效率。

关于这两个函数怎么使用,前面的答者给出了非常详细的描述,在此不再赘述。以下我从两个方面来进一步说明Index+Match函数组合比VLookup函数好用的地方。

一、结合“表格”(超级表),跨表引用巨轻松——那些你曾经看不懂的公式,原来是这么好用!

大海 Excel到PowerBI

很多时候,我们在写公式时,都需要进行跨表的数据引用,比如要通过VLookup函数引用其他表的数据参与计算,或做匹配等,经常要拿着鼠标到处找需要引用的那一列或那个区域,尤其当数据表很大、列数很多的时候,找起来更是费劲,但自从你将普通的表转成了"表格"(超级表:见文章《用了Excel这么久,还有辣么多人不知道“表格”!》),你就轻松了——因为你可以直接在写公式的时候得到相应的提示!

以下将通过一个简单的例子来见证"奇迹的时刻"。

  • Step01-在成绩表里插入新的列"学生姓名"

只要在成绩表的右边,标题行上输入"学生姓名",然后回车,Excel将自动生成一个新的列,如下图所示:

  • Step02-输入公式,根据提示快速选择表

接下来我们开始输入公式"=index(stu……"

See?student表随着公式的输入出来了!

Excel就是这么牛B,直接给你提示!

此时,如果还有多个表的话,我们可以通过键盘的上下箭头进行表的选择,当选到我们需要的表时,按Tab键即选中该表进入公式。

  • Step03-在公式中快速选择要引用的列

引用表后,我们还要指定要引用的列,这时,我们在表名后面输入"["——真正见证奇迹的时候!student表中所有的列名都出来了!

此时,同样地,如果列很多的话,我们可以直接输列名,或者可以通过键盘的上下箭头进行列的选择,当选到我们需要的列时,按Tab键即选中该列进入公式,然后输入"]"完成列的引用。

  • Step04-在公式中仅引用某列的当前行

为完成"学生姓名"的提取,我们继续,到match的时候,我们的lookup_value可是要用当前行的值,怎么办?——当然没问题,在"["后再输入"@",提示还在!是的,在Excel的"表格"中,对"[列名]"表示对整列的引用,"[@列名]"表示对该列当前行的引用,如下图所示:

  • Step05-公式的自动填充

公式全部输入完毕后,回车,该公式将自动填充到该列的所有单元格中,不需要再动鼠标了——就是这么方便!如下图所示:

至此,通过在公式输入时得到的提示,快速地实现了跨表的引用,当你开始习惯了这种输入的方法后,你将会发现原来通过鼠标到处找数据的过程是多么的痛苦,尤其是表很多、列很多的时候!

二、用Index+Match函数提升多列大量数据匹配查询效率

VLookup是Excel中进行数据匹配查询用得最广泛的函数,但是,随着企业数据量的不断增加,分析需求越来越复杂,越来越多的朋友明显感觉到VLookup函数在进行批量性的数据匹配过程中出现的卡顿问题也越来越严重。

那么,在数据量较大,需要批量进行数据匹配查找的情况下,是否有办法进行适当的改善,以提高数据的匹配查找效率呢?

以下用一个例子,分别对比了四种常用的数据匹配查找的方法,并在借鉴PowerQuery的合并查询思路的基础上,提出一个简单的公式改进思路,供大家参考。

一、测试数据

本次测试涉及数据概况及要求如下:

  • 订单表21581行(含标题)

  • 订单明细表17257行(含标题)

  • 要求将订单表中的“订单ID”、“客户”、“雇员”、“订购日期”、“到货日期”、“发货日期”等6列数据匹配到订单明细表中。

如下图所示:

二、4种数据匹配查找方法

1、VLookup函数,按常用全列匹配公式写法如下图所示:

2、Index+Match函数,按常用全列匹配公式写法如下图所示:

3、Lookup函数,按常用全列匹配公式写法如下图所示:

4、Power Query合并查询,按常规表间合并操作如下图所示:

三、4种方法数据匹配查找方法用时对比

经过分别对以上4中方法单独执行多列同时填充(Power Query数据合并法单独执行数据刷新)并计算时间,结果如下表所示:

从运行用时来看:

  • VLookup函数和Index+Match函数的效率基本一样;

  • Lookup函数在大批量数据的查找中效率最低,甚至不能忍受;

  • Power Query的效率非常高。

四、对公式法的改进

我们在前面用VLookup、Index+Match写公式的思路则是对每一个需要取的值,都是一次单独的匹配和单独的取值。也就是说,每次为了查找到一个数据,都需要从订单表的2万多条数据里搜索一遍,这种效率自然会很低。

那么,如果我们在公式中可以做到只匹配一次,后面所需要取的数据都跟着这次匹配的结果而直接得到,那么,效率是否会大有改善呢?

再回头看Index+Match结合的公式,其中,Match函数用于确定所需要查找内容的位置,而Index用于提取该位置相应的值!

那么,如果我们只用Match一次把位置先找出来,后面所有的列都直接用这个位置去提取相应的值,会怎样?

于是,首先用Match函数构建一个辅助列,用于获取匹配位置,如下图所示:

然后,通过Index函数,直接根据辅助列的位置从订单表里读取相应的数据,如下图所示:

经执行公式的批量填充,结果:

  • 用时约17秒,约为直接使用VLookup函数或Index+Match函数组合公式(约85秒)的五分之一

五、结论

在批量性匹配查找多列数据的情况下,通过对Index和Match函数的分解使用,先单独获取所需要匹配数据的位置信息,然后再根据位置信息提取所需多列的数据,效率明显提升,所需匹配提取的列数越多,效率提升越明显。

当然,使用公式的方法,即使在一定程度上进行改进,和Power Query相比仍然有很大的差距。因此,在数据量较大,数据处理较为复杂的情况下,建议使用Power Query来进行

以上提供了Index+Match函数结合超级表以及分拆使用提高效率的两种应用方法,在很大程度上体现了Index+Match比VLookup函数好用的地方,您可以根据实际情况选择使用。


私信“材料”直接下载系列训练材料】

  • 【Excel必备基础小动画】

  • 【60+函数汇总案例】

  • 【数据透视基础精选10篇】

  • 【Power Query入门到实战80篇】

  • 【Power Pivot 基础精选15篇】

我是大海,微软认证Excel专家,企业签约Power BI顾问

让我们一起学习,共同进步!

【您的关注和转发铸就我前行的动力!谢谢支持!】


分享到:


相關文章: