为什么INDIRECT函数值得我们学习呢?
先来看一个案例吧。
跨表查询。
例如,我们有1-6个月的销量数据,现在需要从中查找出几个人的数据。
这个问题很经典吧?
当然也很简单,一个VLOOKUP公式搞定!
=VLOOKUP($A2,'1月'!A:B,2,0)
但是你很快就会发现,这个公式有个巨大的问题,它只能向下填充,却不能向右填充。
这样,你要查6个月的数据就得修改VLOOKUP公式6次!
但,当你学会了INDIRECT函数之后,你就可以把公式修改成:
=VLOOKUP($A2,INDIRECT(B$1&"!A:B"),2,0)
有了INDIRECT和VLOOKUP函数双剑合璧,一个公式就可以搞定所有的查询啦。
然后,还有额外的好处。
看到了吗?我们修改了标题(待查询的工作表名称),不必修改公式,就自动获得了新的查询结果。
这就是INDIRECT跨表查询的能力。
INDIRECT函数是Excel函数中的好员工,既可以单独使用,也可以配合其他函数使用。
INDIRECT函数语法。
非常简单,即“=INDIRECT(单元格引用)”。例如“=INDIRECT("A1")"将得到A1单元格的值。
括号中是一个双引号,引号内是单元格地址,这个地址内的数值是什么,INDIRECT函数就会得到什么。
这有什么用呢?为什么不直接用“=A1”,而要用“=INDIRECT("A1")”这样的公式呢?
让我们先看一下下面这张图吧。
由此,我们会发现,尽管INDIRECT函数就一个参数,也能玩出很多花样啦。一个单元格地址包含行号和列号,这样我们就可以将其中的行号或列号存放在另外一个单元格中,从而实现动态引用单元格。
这样,我们的公式可以保持不变,通过修改行号或列号单元格,可以获得不同的结果。最经典的就是用于创建多级下拉菜单。
制作二级下拉菜单。
①选中原始数据“人事部、市场部、财务部”,点击公式——指定——名称创建于首行——确定;②“部门”下插入一级下拉菜单,并随便选择一项;③“姓名”下插入下拉菜单,输入“=INDIRECT($B3)”。(详细步骤请参考文章《Excel:一级、二级下拉菜单怎么做》)
当一级下拉菜单选择了一个部门时,INDIRECT函数就会自动指向该部门名称,从而获得对应的姓名。
除了二级下拉菜单、跨表查询,INDIRECT函数还可以用于动态求和、跨表求和、合并工作表和工作簿等。
至此,你学会了INDIRECT函数了吗?
本文由解晴新生原创,欢迎关注,带你一起长知识!
发表评论
发表评论: