再看下面的公式,跟上面对比理解。
=INDIRECT("A1")
由于用双引号引起来,所以直接返回A1单元格的值,结果为B1
在换一种引用样式看看
=INDIRECT("R1C2",)
当第2参数为0时,第1参数按R1C1引用样式返回第1行第2列的值,即5
只要明白了这三个简单公式,就可以理解indirect的百变用法了,因为万变不离其宗。
为了加深你的理解,再上两个经典案例。
经典案例一:跨区域统计数据
要统计B列和D列中达到90分的人数,直接用countif函数是无法引用多区域的。
借助indirect引用,你可以一次性引用多个区域,返回想要的结果,最后再用sum函数汇总,公式短小精悍,易于扩展。
=SUM(COUNTIF(INDIRECT({"B2:B9","D2:D9"}),">=90"))
经典案例二:跨工作表查询数据
当要查找的数据分散在不同的工作表时,即使你会用vlookup,也无法一次性找到想要的结果。
比如下面的北京、上海分公司的销售额分别位于不同的工作表中。
用indirect分别引用对应分公司所在的工作表区域,就可以灵活跨表查找啦!
=VLOOKUP(B2,INDIRECT(A2&"!a:b"),2,0)
现在,你觉得indirect函数是不是一个机灵鬼怪的小精灵呢!
希望这篇文章能帮到你!怕记不住可以发到朋友圈自己标记。
Excel函数公式方面的各种技术,我已经花18个月的时间整理到Excel特训营中超清视频讲解,并提供配套的课件方便同学们操作和练习。