大家好,今天回答一位会员的提问:
“当有多张表进行跨表汇总时,如何在复制公式时让公式中的Sheet1自动变为Sheet2、Sheet3……?”
这个问题很有代表性,相信大家也遇到过:
如上图所示,假设我们手头有6张表要汇总,分别为Sheet1到Sheet6,每张表行数、列数均一致,但是E列的数据是不同的。
现在,需要在“汇总”表中对每张表的E列进行求和,怎么办?
很简单,对表1写SUM公式:=SUM(Sheet1!$E$2:$E$22),然后向下复制。但问题是复制后结果都一样,因为公式都是对表1的求和,我们需要手工修改,依次将公式修改为:
=SUM(Sheet2!$E$2:$E$22)
=SUM(Sheet3!$E$2:$E$22)
=SUM(Sheet4!$E$2:$E$22)
=SUM(Sheet5!$E$2:$E$22)
=SUM(Sheet6!$E$2:$E$22)
这样,才能得到下面的汇总结果:
多少有点麻烦,尤其是当汇总表数量较多时。
那么有没有办法只写一次公式,然后复制公式时,让公式中的Sheet1自动变为Sheet2、Sheet3……呢?
当然可以!我们只需将SUM中的引用改成文本方式的引用,在中间添加一个INDIRECT函数,写完后双击就可以复制公式了,一次完成!
操作GIF如下:
说明:
INDIRECT函数是一个文本引用函数,它可以返回一个文本所指向的引用,因此它的参数往往是一串文本。
这个案例的目的不仅仅是解决这个问题本身,解决这个问题,我们还可以将汇总表中的表1、表2、……、表6分别改为Sheet1、Sheet2、……、Sheet6,这样写公式可能更容易一些。
这个案例是希望大家掌握Indirect函数的使用,学会在类似的应用场景中手动修改工作表的文本引用。
好了,今天的答疑就到这里,你学到了吗?