来自:简书,作者:傲看今朝
链接:http://www.jianshu.com/p/fd584928c822
已获授权转载
今天我就给大家解密一下这个函数,也算是对当时老师的致歉。
Index函数是Excel中一个非常实用强大的引用函数,它的目的就是引用特定单元格或单元格区域的值。Index函数总共有3个参数,分别是array,row_number以及Column number。公式详细如下:
=Index(array,row_number,Column number)
翻译成中文就是:=index(数据区域,(从上往下)第几行,(从做往右)第几列)
举个例子,咱们在H4单元格输入:=index(A1:K22,4,3),它表达的意思就是选择一片区域A1:K22,然后从上往下数到第4行,再往右数到第3列,然后返回这个单元格(C4)的值:84,因此此公式返回的值为84。如下图:
Index函数详解
这就好比是说在平时生活中,你老婆喊你去取包裹:“喂,老公!你帮我到财经大学实验楼(数据区域)1楼(第几行)3单元(第几列)拿个包裹嘛。” 这个Index是不是非常简单。我们再来看看几个例子吧。
我们如何快速得到着两个问题的答案呢?
1、李晨位于A1:A22这个区域的第几行呢?
用肉眼的话,你可以从A1一直往下数,数到“李晨”才停下,答案是18。但如果你想提高效率的话,就用match函数,输入一下的公式即可:=match('李晨',A1:A22,0)。这就是告诉Excel,我要你帮我看看,“李晨”这名字在“张华……张得能”这一串名字中是第几个,我们只需要告诉Excel“李晨”,以及那一串名字,以及告诉他,肯定有李晨这个人(匹配为0),它就自动帮助我去数数了。
2、英语位于A1:D1这个区域的第几列?
方法肯定是跟上面一样了。输入公式:=match('英语',A1:D1,0),敲回车即可。
match函数就是这个样子的
Match函数单独使用其实是没有什么用的,它的存在主要是为了给被人做嫁妆用得。而它最常出现在Vlookup函数和Index函数中,以Index尤甚。现在我们先来看看它是怎么给Vlookup做嫁妆的。match函数在Vlookup中主要是用于Vlookup的第三个参数,也就是确定列序号。这使得Vlookup函数着实灵活了不少,请看下面的例子咯。
写好公式即可一键复制到选中的区域,而不用一个一个更改列序号了
3、Vlookup中嵌套Match需重点关注的是引用的问题。
Vlookup函数中的引用问题:用于是通过A列的到N1:S18中进行查找,因此第一个参数的列应该锁定。我们查找的区域永远都是N1:S18,公式复制时,不希望其变化,因此用绝对引用。
match函数中的引用:我们想通过match函数返回G1:K1等5个单元格的值分别在N1:S1这个区域中的位置分别排第几位,因此区域N1:S1是固定的,因此绝对引用,而match函数只应用于列,因此行不能动,因此混合引用,将行锁住。我们查找的值在N1:S1这个区域一定是存在的,因此精确匹配,用0表示。
注意:在Vlookup中嵌套match时,match里第二个参数的区域和Vlookup函数第二个参数的列数应该保持一致。
废话不多说,大家看上面的例子慢慢琢磨去。
没有Match函数这个黄金搭档,Index函数不要说秒杀Vlookup了,想活下来都难。Index函数完胜Vlookup函数的一点就是,Vlookup函数有一个局限,那就是lookup_Value这一列的值必须要存在于Table_Array这个区域的最左边,否则一般会出错(当然你也可以写很复杂的函数,或者做一定的调整,那样不出错,不过很麻烦)。而使用index函数这不受此限制。我先来一波简单的index案例:
上下左右随心所欲拖拽吧
好,现在我们将G:K列全部已到移到姓名列的左边,那么我们的公式还有效吗?咱们试试:
姓名列随便怎么放,结果都不会有变化
最后我们也来看看Vlookup会是什么效果?
●本文编号409,以后想阅读这篇文章直接输入409即可
●输入m可以获取到全部文章目录
●输入c可以获取到全部动画下载地址
联系客服