indirect函数引用范围(它才是查找引用函数No.1)
一说起查找引用函数,你是不是如数家珍,Row、Vlookup、Column、Hyperlink函数等等。
今天就要来给大家介绍一个非常强大的查找与引用函数——Indirect
如果要评选Excel的最牛函数榜,我觉得Indirect肯定是有一席之地的。
如果有哪个自称Excel高手的人,他说他不会这个函数,那么他一定是个假的Excel高手。
Indirect函数可以引用同一工作表、不同工作表、不同工作簿(必须打开)的数据。
最常用的语法=indirect(文本字符串形式指定的单元格地址)。
注意这里的“文本字符串形式”,简单来说就是文本形式,如何理解呢?
比如,我们在D1单元格引用A3的内容,直接在参数中输入A3,结果是错误的,如下图:
但是如果我们输入的参数是"A3",则结果是对的:
原因就是:在Excel的函数眼里,A3、B2就等于某个单元格而不是文本。将A3加上引号"",它就变成了文本。
所以使用indirect函数的关键就是把单元格地址变成文本形式的地址。
使用连接符&可以得到文本串,如果我们用&将字母A和数字3链接起来作为参数输入,也是正确的:
indirect函数并不直接使用单元格地址,而是使用这种由引号或连接符串成的文本地址,所以很多人又把它称为间接引用函数。
那么间接引用有何优势呢?那就是非常灵活!
譬如我们需要把表2中A3单元格内容引用到表1的D1单元格中。
公式可以是=INDIRECT("表2!A3")
也可以是=INDIRECT("表2"&"!A3")
还可以用ROW或者COLUMN函数来生成字符串中的数字并连接起来=INDIRECT("表"&ROW(B2)&"!A"&COLUMN(C1)):
如果地址中的“表2”恰好是表1中某个单元格如B3单元格的值,还可以这么写=INDIRECT(B3&"!A"&COLUMN(C1))
这种灵活性在多表数据汇总到一个表中时作用巨大。
下面开始多表引用了,大家看仔细啦!
比如,我们来看下面这个案例。我们要从企业12个月的利润表(结构一致)上取出每个月的营业收入放在第一张表格上。
小白的做法如下图所示,一个个输入公式进行查找,方法笨还容易出错。
正确的操作:
在B2单元格输入=indirect(B1&"!C5"),然后右拉公式,1-12月的营业收入就全部引用过来了。
之所以右拉公式后能够自动引用2-12月份的营业收入,是因为B1&"!C5"在右拉过程中会逐次变为:
C1&"!C5"
......
这些文本字符串对应的内容分别是:
2月!C5
3月!C5
......
正好表示了不同分表的C5单元格地址。外面加上indirect函数,自然就把这些地址的数值提取出来了。
上面的案例继续延伸,如果我们将利润表中的每行都汇总显示到总表上,怎么操作呢?
由于总表上报表项目的排序与每个月分表排序相同,我们可以使用公式 =INDIRECT(B$1&"!C"&ROW(5:5))下拉。
操作如下图所示:
如果汇总表的排序样式发生了变化,还能操作吗?
答案是肯定的,我们可以借助column函数嵌套使用。
如图所示,现在月份作为行标题。列标题为各月分表转置后的报表项目。
此时,我们可以在B2单元格输入公式 =INDIRECT($A2&"!C"&COLUMN(E:E)),右拉公式,然后再下拉即可。
操作如下图所示:
好啦,indirect函数的使用方法,今天就讲到这里了。
说实话,我们也就讲到了这个函数的一点皮毛,你感受到这个函数的强大了吗?
学懂了的同学,可以在评论区留言:这也太容易了吧!
没看明白的同学别着急,可以在评论区留言:求初级版。
我们会根据反馈,再给大家推出其他教程。
,免责声明:本文仅代表文章作者的个人观点,与本站无关。其原创性、真实性以及文中陈述文字和内容未经本站证实,对本文以及其中全部或者部分内容文字的真实性、完整性和原创性本站不作任何保证或承诺,请读者仅作参考,并自行核实相关内容。文章投诉邮箱:anhduc.ph@yahoo.com