MATCH函数+INDEX函数组合
发布时间:2022-03-28 07:12:46
在Excel中,MATCH函数和INDEX函数是一对非常经典的组合,我们经常能够在Excel公式中看到他俩的“身影”。MATCH函数返回查找值在单元格区域或者数组中的位置,INDEX函数返回这个位置的数据。下面,让我们看看MATCH函数和INDEX函数组合使用的一些例子,从中体会这对组合的强 * 。
查找满足多个条件的数据
如下图1所示的工作表,数据区域为B3:D16,求单元格G2中指定班级和单元格G3中指定姓名的学生成绩?在单元格G4中使用数组公式:
=INDEX(D3:D16,MATCH(G2&G3,B3:B16&C3:C16,0))
其中,MATCH(G2&G3,B3:B16&C3:C16,0)查找到指定班级的学生在数据区域中的位置,作为INDEX函数的参数来提取值。
图1
总是获取列表中的最后一个数据
如下图2所示的工作表,求列表区域B3:D16中最后一位同学的成绩?在单元格H4中的公式:
=INDEX($D$3:$D$16,MATCH(9.9E+307,$D$3:$D$16))
其中,MATCH(9.9E+307,$D$3:$D$16)总是获取D3:D16中最后一个数据所在的位置。
图2
创建动态区域
动态区域就是当该区域中增加或删除数据时,引用的区域会自动调整。
仍以图2所示的工作表为例,将上例中的公式作为单元格引用的第二个元素:
$B$3:INDEX($D$3:$D$16,MATCH(9.9E+307,$D$3:$D$16))
因为INDEX函数在引用的开始单元格和冒号之后,因此不再获取该区域中的最后一个单元格值,而是获取区域中最后一个数据单元格的地址,从而与开始单元格组成单元格区域。
为了演示效果,我们将上面的引用定义为名称:DynamicData,如下图3所示,当增加数据后,引用区域会自动扩展。
图3
创建更加强大的动态区域
下面中的例子,使用INDEX函数、MATCH函数和COUNTA函数结合的公式,根据指定的列名创建动态区域,很特别的是,各列的行数不需要相同。
如下图4所示,当工作表Sheet4中单元格A1内容为“水果”时,动态命名区域为工作表Sheet3中的水果列;当工作表Sheet4中单元格A1内容为“家用电器”时,动态命名区域为工作表Sheet3中的家用电器列,依此类推。
图4
首先,工作表Sheet3中创建一个动态命名区域:Datas。
公式为:
=Sheet3!$A$2:INDEX(Sheet3!$1:$50,50,COUNTA(Sheet3!$1:$1))
如果工作表Sheet3如下图5所示,则创建的动态区域为从列A开始的3列以及从第1行开始的50行的区域。
图5
然后,选中工作表Sheet4的单元格B2,如图6所示,打开“新建名称”对话框,创建动态名称:DynamicList。
公式为:
=INDEX(Datas,1,MATCH(Sheet4!A1,Sheet3!$1:$1,0)):INDEX(Datas,COUNTA(INDEX(Datas,,MATCH(Sheet4!A1,Sheet3!$1:$1,0))),MATCH(Sheet4!A1,Sheet3!$1:$1,0))
图6
注意:由于要想引用当前单元格左侧的单元格,因此在定义名称时,一定要选择工作表Sheet4的单元格B1。
上面的公式比较复杂,以冒号为界,分为两个部分。
第一部分:INDEX(Datas,1,MATCH(Sheet4!A1,Sheet3!$1:$1,0))
在工作表Sheet3中找到工作表Sheet4单元格A1中的数据所在的单元格,作为起始单元格。
在第二部分中,公式:COUNTA(INDEX(Datas,,MATCH(Sheet4!A1,Sheet3!$1:$1,0)))
找到工作表Sheet4单元格A1中的数据在工作表Sheet3中的列并统计该列非空单元格数量,作为外层INDEX函数的参数。整个第二部分的INDEX公式找到相应列的最后一个数据单元格,作为结束单元格。
结语
使用MATCH函数与INDEX函数的组合,让我们突破VLOOKUP函数的局限,创建常用的获取数据的公式。如果更深入的发掘MATCH函数与INDEX函数的能力,可以创建更加强大的获取数据区域的公式,使其发挥得淋漓尽致。


猜你喜欢
- 如何用美好的文字来表达心情?现在,您可以在 Apple Music 中找到您喜欢的歌曲,然后长按歌词发送给好友,好友不仅能看到歌词,还能聆听
- Excel是微软公司的办公软件Microsoft office的组件之一,是由Microsoft为Windows和Apple Macinto
- 笔记本相比台式机最大的优势就是携带方便,给外出行走的用户带来了操作的方便,不过也有用户遇到了笔记本的问题,譬如笔记本电池充不满的问题,一方面
- 有不少用户反映自己的电脑升级Win11之后,就经常出现断网的情况,非常影响日常操作。那要如何解决Win11系统WiFi间歇性断网严重的问题呢
- 笔记本电脑开机黑屏怎么解决?最近有用户询问这个问题,使用电脑的时候开机就遇到了黑屏,这是怎么一回事呢?其实黑屏是很常见的故障,那么应该怎么解
- word怎么设置才能尽可能的减少打印页数?要打印的word文档有很多页,即使双面打印也要浪费很多纸张,该怎办呢?下面分享一种设置方法可以减少
- 想监控Windows7的所有运行程序和网络使用情况,但找不到比任务管理器更好用的软件?有些网友会出现这一疑问,其实不是的,在win7中,可以
- 如何使用camtasia分阶段调整音频音量?对一份音频文件进行处理,根据要求,你必须将其中一小段的声音提高,这时就不能整体调整、而是需要逐段
- 如何利用PS软件进行快速抠图?PS抠图方法有很多,小编之前也介绍过几种,最近有小伙伴询问想要更简单的抠图方法。下面,小编就为大家介绍下利用P
- win10安全模式怎么退出来?很多用户们在使用电脑的时候,在电脑有问题的时候,都会进入安全模式,但是很多的用户们都不清楚要怎么才能退出安全模
- excel2010单变量求解是先假设公式中某一变量的结果值已知,然后计算出该变量的引用单元格的取值,所以它可以对数据结果进行逆运算。本例中,
- 想把有趣的视频分享给好友或者制作成表情包,可以先将视频转换为 GIF 动图文件,GIF 的体积相比视频文件更小,便于储存和分享。升级电脑端爱
- 我们在使用Word2010编辑文档的过程中,常常需要版面要求设置段落与段落之间的距离。本文就来介绍一下设置段落间距的三种方法。Word201
- Win8系统中onedrive云服务如何禁用?在电脑中是存在onedrive云服务功能的,这个onedrive云服务能够用户同步用户文件,存
- vivo nex双屏版怎么设置滑屏特效?vivo nex双屏版中有个非常炫酷的滑屏特效,有不少用户还不知道要在哪里开启这个特效,下面就给大家
- win10系统电脑开机后,在桌面上单击鼠标右键后,电脑桌面就突然进入假死状态且无法点击任何程序,这是怎么回事呢?该问题一般是由于第三方软件造
- 之前,一位word用户反映说,打开word之后,软件会提示:配置进度,等了一段时间之后,word依然打不开。这是怎么回事呢?小编分析,该用户
- Win10电脑在使用过程当中会自动产生一些缓存,日积月累下会占用非常多的存储空间,最终将影响电脑的正常运行速度,初次使用win10电脑的用户
- XP系统使用机械硬盘的主机,需不定时地进行磁盘碎片整理才可以让程序运行更加快速。最近有Xp系统反应,电脑打开磁盘碎片整理程序时遇到提示:“磁
- Launchpad 是在 Mac 上打开和管理应用程序的最简单方法。接下来为大家介绍如何使用Launchpad。什么事macOS启动版?将