Hello,大家好!今天和大家分享,Excel的indirect函数的用法。
indirect函数用于返回文本字符串指定的引用。其语法为INDIRECT(ref_text,[a1])。参数ref_text指对其他单元格的引用。参数a1是可选参数,如果a1为True或省略,则为A1样式的引用;如果a1为False,则为R1C1样式的引用。我们通常使用A1样式的引用,因此本文介绍参数a1省略情况下,indirect函数的用法。
如下图所示,在D1单元格输入公式:=INDIRECT(B1),公式返回的结果为“abc”。B1单元格的数据是“B2”,因此INDIRECT(B1)=INDIRECT("B2")。而indirect函数将参数中的文本字符串视为对单元格的引用,因此“=INDIRECT("B2")”,实质就是“=B2”,最终返回B2单元格的值“abc”。
上面的小例子是为了帮助我们理解indirect函数。如果我们需要获得B2单元格的值,在D1单元格直接输入公式“=B2”即可,没有必要使用indirect函数。
indirect函数是一种间接引用函数,很多情况下,我们直接引用单元格或区域即可,不需要使用indirect函数。那么什么时候使用indirect函数呢?indirect函数通常用于,函数公式不变,但引用区域需要变化的情形。接下来我们就介绍需要使用indirect函数的三种情形。
1
锁定引用的单元格
如下图所示,要求计算B2:B8单元格的合计销售额。
在B9单元格输入公式:=SUM($B$2:$B$8)
在C9单元格输入公式:=SUM(INDIRECT("C2"):C8)
B9、C9单元格的公式返回的结果相等,均为“270”。
当新增一行数据时,原来B9单元格的公式下移一行,变为B10单元格的公式,且公式自动修改为“=SUM($B$3:$B$9)”,公式返回的值不变。