Excel296 | INDIRECT函数跨表汇总数据

问题来源

如下动图:
Excel296 | INDIRECT函数跨表汇总数据

1-6月份产品销量表,要汇总到“上半年”工作表中,INDIRECT函数就可以轻松搞定 。
公式实现
在B2单元格输入公式:
=INDIRECT(B$1&"!B"&ROW()),确定,即可得1月产品1的销量 。
公式向下填充,可得所有月份所有产品的销量 。
如下动图:
Excel296 | INDIRECT函数跨表汇总数据

公式解析

公式:=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-样式的引用 。
  • 【Excel296 | INDIRECT函数跨表汇总数据】如果 a1为 FALSE,则将 ref_text解释为 R1C1样式的引用 。

相关经验推荐