INDIRECT函数跨表汇总数据
如下动图:
1-6月份产品销量表,要汇总到“上半年”工作表中,INDIRECT函数就可以轻松搞定。
公式实现I
在B2单元格输入公式:
=INDIRECT(B$1&”!B”&ROW()),确定,即可得1月产品1的销量。
公式向下填充,可得所有月份所有产品的销量。
如下动图:
公式解析
公式:=INDIRECT(B$1&”!B”&ROW())
B$1:
指B1单元格的值,此值刚好与工作表“1月”的名称相同。使用混合引用B$1,公式向下填充时,行号不变,永远是第一行的值;公式向右填充时,列标自动改变,改变为表“1月”“2月”“3月”……的名称;
ROW():
ROW()是当前行的行号,公式向下填充到哪一行就是哪一行的行号。
B$1&”!B”&ROW():
B$1对应工作表名,!是表与单元格的分界标志,ROW()都是当前行的行号。公式在B2单元格,此部分的返回值是1月!B2。
INDIRECT(B$1&”!B”&ROW()):
返回参数引用的单元格;公式在B2时,此部分的返回1月!B2(1月工作表B2单元格)的值。
函数介绍
功能:
返回由文本字符串指定的引用。此函数立即对引用进行计算,并显示其内容。
语法:
INDIRECT(ref_text, [a1])
参数:
Ref_text 必需。对单元格的引用。
a1 可选。一个逻辑值,用于指定包含在单元格 ref_text 中的引用的类型。
如果 a1为 TRUE或省略,ref_text被解释为 A1-样式的引用。
如果 a1为 FALSE,则将 ref_text解释为 R1C1样式的引用。