偷偷学会这个小众高能函数,我再也没有加过班

yumo6666个月前 (05-18)技术文章41

大家好,我是工作忙疯了的绿水零。


今天我要给大家介绍的是,一个经常被忽略,常年做配角的函数——INDIRECT。


在英文里,INIDRECT 是不直接、间接的意思。因此它的作用顾名思义就是间接引用。


好家伙,名字自带拐弯抹角。


但 INDIRECT 函数真的是个非常好用的函数!!和不同函数组合使用可以发挥超强的功能。

往下看

INDIRECT+SUM=跨表求和

将各月份 B2:B5 单元格的数据求和,并且汇总到季度合计工作表中。

▋INDIRECT+VLOOKUP=跨多表查询

加上 VLOOKUP 就可以实现跨多表查询。

INDIRECT+定义名称+数据有效性=多级下拉菜单

之前,我们就介绍过多级下拉菜单的制作方法,它里面就用到了 INDIRECT 哦~


知其然并且知其所以然,我们才能更好地举一反三,熟练应用。

下面,有请今天的主角 INDIRECT 函数登场~ (今天的案例在 Excel 和 WPS 中均可使用。)


01 基本用法


基本用法:


=INDIRECT(文本格式的引用地址, 引用地址的样式)

INDIRECT 函数只有两个参数。


第一个参数是引用地址,要求格式为文本:


想引用 A2 单元格的值,需要用英文的双引号框起来(如"A2")。


A2 单元格的值是 A1,直接写 INDIRECT(A2)的结果等同于 INDIRECT("A1")。

第二个参数是引用地址的样式,有下列两种情况:


TRUE 或省略,引用格式为 A1 样式;


FALSE,引用格式为 R1C1 样式;


看不懂没关系,我们举几个例子,来看下 INDIRECT 函数几种基本使用方法。

TYPE 01:A1 样式引用


A1 样式,即用字母表示列号,数字表示行号以确定单元格的地址。


A5=INDIRECT("A1")


「A1」就表示地址为 A 列第 1 行的单元格,用 INDIRECT 引用 A1 的结果就是 A1 单元格的值。


▋TYPE 02:R1C1 样式引用


R1C1 样式,R 是行(Row)的英文简写,C 是列(Column)的英文简写,所以 R1C1 表示的是第一行第一列的单元格。


A5=INDIRECT("R1C1",FALSE)


这里 R1C1 也同样要用英文的双引号引起来,而第二个参数为 FALSE。


▋TYPE 03:名称引用


Excel 或 WPS 表格中有个叫名称管理器的东西,利用它,我们可以将指定区域(可以是一个单元格,也可以是一个区域;可以是静态区域,也可以是动态区域)定义为一个方便记忆和使用的名称。


在使用 INDIRECT 函数的名称引用前,就先需要定义名称。


这里我将 B 列的单元格定义为 A 列同一行的名称,那么熊大就等同于 B2 单元格,值是 101;


熊二就等同于 B3 单元格,值是 102……


公式:

=INDIRECT("熊大")


这里使用 INDIRECT 引用「熊大」就直接显示 B2 单元格的值 101 了。


引用名称时同样需要注意要用双引号引起来。


我们在定义名称时使用的其实是 A1 样式,所以第二个参数就省略了。


02 进阶用法——跨表引用


数据汇总永远是 Exceller 跨不过的坎,躲不过的命。


现在这里就有两张图,需要把图 1 中每个月的销售报表数据,汇总到图 2 季度汇总这个表里。


而每个月报表的结构是完全相同的。


这种情况下,复制黏贴是不可能滴!


我们有更快捷的方法——有请 INDIRECT 函数上场。


公式:

=INDIRECT(B$1&"!B"&ROW())


需要汇总的数据分别在三个不同的表,但是工作表的结构是完全相同的。

那么我们可以组合出动态的表名(工作表名称!)+单元格位置(如 B2),然后用 INDIRECT 函数对其进行引用。


▋组合出引用地址


在 Excel 中跨表引用的格式是是表名+「!」,例如'1 月'!B2 就是引用工作表 1 月的 B2 单元格。

(这里 1 月用单引号''引起来是因为它是字符串,在公式栏中使用字符串都需要用引号引起来。)


我们的目标就是要组合出'X 月'!BX 这种动态地址。


B2=B$1&"!B"&ROW()


(这里引用的 B1 单元格的值,本身就是字符串,所以无需再用引号。)

▋套用 INDIRECT 进行间接引用


接着把组合出来的动态地址套上 INDIRECT 这个帽子就 OK 啦~


公式:

=INDIRECT(B$1&"!B"&ROW())


掌握 INDIRECT 函数的使用,你就可以实现:动态引用单元格区域、名称区域、其他工作表区域,甚至其他工作簿区域的功能。


而且配合其他有区域参数的函数使用更香!


例如我们开篇演示的加上 SUM 函数实现跨表求和、加上 VLOOKUP 实现跨多表查询等等~


03 总结


INDIRECT 函数的参数小结~


欢迎在留言区和我们分享~

相关文章

Excel公式:行(ROW)、列(COLUMN)及Vlookup函数的使用

一、ROW函数含义:返回引用的行号。即通过ROW函数来获取所在行的行号数据。使用方法:1、ROW() 直接ROW后面加空括号,注意是英文半角字符。 2、ROW(A1) 在空括号中写指定的单元格,如A...

COLUMNS函数:虽然我们不常见,但我懂你,你也懂我?

大家好!最近有点忙,很久没有与大家见面了。今天函数哥向大家分享COLUMNS函数的使用方法。COLUMNS函数使用的方法非常简单,单独使用的情况也非常少。还是先来看看COLMNS函数的使用魅力吧!是不...

Excel函数之列函数COLUMN和COLUMNS

COLUMN一般用来返回当前的列数就是属于第几列第几列COLUMNS用来返回选中的区域中的列数另外有些函数简单不代表它用途小,主要看你怎么用,先学会再根据函数的特性组合形成新的功能,或者符合你需求的功...

ROW函数太强大了!居然能生成6类序号,再也不用复制粘贴了

今天跟大家分享一个非常好用的函数——ROW,它自动生成各种各样的序号,满足工作中的各类需求,再也不用一个一个的手动拖动了!一、ROW函数ROW:返回引用单元格的行号语法:=ROW([reference...

Excel工作表中的Vlookup,它才是No1,查询之王

查询引用也是数据分析中常用的操作之一,如果要在Excel中查询引用,则必须掌握Vlookup函数,它才是Excel工作表函数的No1,查询之王!一、功能及语法结构。功能:根据指定的查询条件和区域,返...

值得收藏的10组Excel公式,可直接套用,快速提高工作效率

Hello,大家好,今天跟大家分享10组日常工作中经常需要用到的Excel公式组合,大家如果遇到类似的问题,更改数据区域,直接套用即可,废话不多说,让我们直接开始吧想要从零学习Excel,可以点击上方...