这个函数,比VLOOKUP好用10倍,不限版本,简单易懂
哈喽,大家好。
许多人都看到过这对函数组合,却不知它比想象中更加强大!
下面,就用八种经典应用来给大家介绍一下这个函数吧!此篇是入门级,适合新手查看。
INDEX语法:(数组或区域,行号,列号)
1、调取一列数据中的第几个数字
公式=INDEX(B:B,6)可以得到B列的第六个数据;
注解:5月不是这列的第五个,因为有个表头。
如果将数据区域设置为B2:B10的话,数字的位置正好和月份对应,此时公式可以改为=INDEX(B2:B10,5)。
注解:这种用法有局限性,当月份不是按顺序排列或者某个月份缺失时,结果就不对了。
2、调取一行数据中的第几个数字
假如我们想得到第二行的第六个数据,就可以输入公式=INDEX(2:2,,6)
注解:因为数据只有1行,所以公式也可以写成=INDEX(2:2,6),这是省略的写法;类似的示例1其实也是省略的写法,完整的公式是=INDEX(B:B,6,)
由此可知,当数据只有一行或一列时,INDEX(数组或区域,行号,列号)中的行号或列号可以省略。
3、调取多行多列的区域中指定的数字
公式=INDEX(B2:H5,3,4)可以得到区域中第三行(冰箱)第四列(4月销量)的数字(冰箱4月的销量)。
注解:INDEX(数组或区域,行号,列号)中的行号和列号是第一参数确定的区域中的行号和列号,而非表格中的行号和列号,初学者很容易在这个地方犯糊涂,一定要注意。
以上属于INDEX的基础用法,比较好理解,但是弊端也很明显,就是行号和列号不够智能,下面来几个进阶版的用法。
4、智能调取多行多列的区域中指定的数字
需求是根据产品名称和月份,现在要来调取对应的销量,其实这也就是一个多条件查找。
输入公式=INDEX($B$2:$H$5,MATCH($A8,$A$2:$A$5,0),MATCH($B8,B$1:H$1,0))
注解:MATCH是实现智能调取的关键因素,关于这个函数的用法参考之前的教程。
在这个公式里,还要注意$的用法,要充分考虑公式下拉时各参数行和列的变化情况,只能通过多练习才能熟练引用,没有捷径。
5、反向匹配数据
大家都知道,超好用Vlookup函数有个致命的缺点就是不能反向查询,而INDEX却能轻松解决问题。
比如下图所示,我们要通过姓名来匹配公号,可以输入公式:=INDEX(A:A,MATCH(D2,B:B,0))
注解:使用INDEX函数没有方向的要求,这与VLOOKUP有本质的区别。
6、将一列数据拆分成多列
比如,现在我们有一列流水信息,现要将这张表进行拆分,可以输入公式=INDEX($B$2:$B$19,ROW(A1)*3 COLUMN(A1)-3),效果如图所示。
注解:①公式的难点是ROW(A1)*3 COLUMN(A1)-3,这部分可以参考之前的教程:三个规律,写出好公式
②如果消费金额显示不对的话修改单元格格式为数字即可
7、隔行提取数据
如图所示,要在这样的数据中把姓名提取到一列,就可以使用公式=INDEX(A:A,ROW(A1)*2-1)&""来完成。
注解:①公式中的ROW(A1)*2-1是一种最基础的数列,也就是得到1、3、5……这样的一组数字,从而实现了隔行取数。
②公式中的&""的作用是当姓名超出范围时返回空值而不是0。
8、隔列提取数据
与上一个例子类似的,可以用公式=INDEX($B3:$Q3,COLUMN(A1)*2)实现隔列提取数据的功能,结果如图所示。
注解:公式中的COLUMN(A1)*2实现的是右拉得到2、4、6……的一组数字,从而实现了隔列取数的效果。
六姑娘碎碎念:以上是今天给大家分享的INDEX常用案例,都是比较基础的用法,这个函数还有一些高级用法,想看的请留言哟,原创整理不易,对你有帮助的话,记得点个赞!
欢迎大家扫码进群交流学习~
另外,Excel基础不扎实的同学,欢迎学习下面这套工作用得上的Excel训练营
- 0000
- 0001
- 0000
- 0004
- 0003