Excel中如何引用多个工作表同一位置的数据到一个总表中?

有多个同种格式的工作表,我想把它汇总到一张表上,需要引用各个工作表中同一位置的数据,请问有没有什么快点的方法,谢谢!

1、打开所有的Excel表格,如图所示,然后在下面把所有的表格进行汇总。

2、每个工作表的A1中都有数据。

3、要对所有表格A1数据进行求和,在第一个工作表中输入公式=sum(,然后选择A1单元格。

4、然后按下Shift键选择最后一个工作表,公式会自动变化。

5、最后,全部编辑输入好之后,如图所示,按回车键这样就可以汇总到一个总表中了。

温馨提示:答案为网友推荐,仅供参考
第1个回答  推荐于2016-05-21

可以使用INDIRECT函数来返回引用。如果表名有规律,如Sheet1、Sheet2……SheetN,可以直接引用,如果表名没规律,得先用宏表函数取出表名,再引用。

以下图为例,假设工作表分别为Sheet1-Sheet5,各表的A1单元格分别为1-5,汇总表在后面,要把各分表的A1单元格取到汇总表。

方法一:表名有规律的方法。

B1 =IFERROR(INDIRECT("sheet"&ROW()&"!A1"),"")

公式下拉复制,就可以了,如上图。

方法二:表名没有规律的方法。

步骤1:定义名称 x 如下

=REPLACE(GET.WORKBOOK(1),1,FIND("]",GET.WORKBOOK(1)),"")

步骤2:A1输入公式

=IF(ROW()>COLUMNS(x)-1,"",INDEX(x,ROW()))

公式下拉到足够容纳所有工作表名

步骤3:C1输入公式

=IFERROR(INDIRECT(A1&"!A1"),"")

公式下拉,结果如下图

知识扩展:

1、GET.WORKBOOK(1)是4.0宏表函数,以“[工作簿1.xlsm]Sheet1”的形式返回所有工作表名的水平数组,再用REPLACE函数把工作簿名去掉,只保留所有工作表名,再用INDEX函数逐个取出。

2、由于使用了4.0宏表函数,因此,工作簿必须保存为启用宏的工作簿(*.xlsm),不能保存为不启用宏的工作簿格式(*.xlsx)。

3、INDIERECT函数的用途就是,返回由文本字符串指定的引用,如=INDIRECT("Sheet1!A1"),就是返回Sheet1工作表的A1单元格的值,工作表名用“!”表示。

第2个回答  2011-05-24
汇总是指求和吗?

公式类似这样
=sum(sheet1:sheetn!a1)追问

我要汇总仓库库存一览表,前提是各个物品有个单独的表格,但是表格样式是一模一样的,现在就是要取各个表格中同一位置的数据如库存量到一览表中,用什么可以实现?

追答

假设汇总表的A列是其它各个工作表的名称,要将他们D2的数据引用到B列
B1
=INDIRECT(A1&"!D2")
向下填充

追问

不行啊,我的意思是我要引用工作表名称为LPA01,LPA02,LPA03...中的D6列,到汇总表的A1、A2、A3...,如何实现?

追答

A1
=INDIRECT(TEXT(ROW(),"LPA00")&"!D6")
向下填充

本回答被网友采纳
第3个回答  2020-01-10
第4个回答  2018-05-06
比如表1表2表3分别取名sheet1sheet2sheet3依此类推...,我们要引用每一个工作簿的D1单元格,公式格式为=INDIRECT("sheet"&ROW()&"!D1")。下拉就能得到效果。
相似回答