excel2003的使用,在一个工作薄里有42个工作表,如何提取同一个位置的内容(有文字的、日期的)?

提取后汇总到一个新的工作表里,成为一列。

打开excel文件,里面有一百多个工作表,从sheet1到sheet100这样,现在需要把每个sheet里面的A3数据提取出来,组成新的一列,又把所有的D5数据组成新的一列,以此类推,确定工作表的名字是Sheet1、Sheet2、...Sheet100。
1、插入一新工作表,在任意单元格输入 =INDIRECT("Sheet"&ROW(A1)&"!A3") 公式向下复制100行。
2、同理 =INDIRECT("Sheet"&ROW(A1)&"!D5"),求行标公式:ROW(A1),求列标公式:COLUMN(A1)。多工作表同位置单元格求和。
3、EXCEL中容易被忽略功能(18):多工作表同位置单元格求和。对于一个工作簿内多个相同位置的单位格求和,最常见的方法是:=sheet1!A1+sheet2!A1+sheet3!A1+sheet4!A1+sheet5!A1+sheet6!A1+sheet7!A1+sheet8!A1 公式很长。如果想对当前工作簿内除当前工作表以外所有A1单元格求和,可以用的的简便公式: =sum('*'!A1)。
提醒:1、这种公式系统还是会转换成类似下面的公式。
2、这个公式不含当前工作表!如果要想计算所有工作表,可以写: =SUM(Sheet1:Sheet8!A1)。特别强调:工作表名称不一定必须是按顺序命名的,比如:工作表名称分别为:北京、上海、南京、成都。对这4个表所有A1单元格求和,可以写为:=SUM(北京:成都!A1)。系统会先判断:北京是第一个工作表;成都是第四个工作表,那么这个公式的含义就是: 从第一个工作表到第四个工作表所有A1单元格的和。也就是说这个公式中工作表的名称只是为了确定表格的位置!如果只想对sheet2表到sheet7表的A1单元格求和。那么可以输入这样的公式:=SUM(Sheet2:Sheet7!A1)。如果只想对sheet2表到sheet4、sheet6表到sheet7求和,中间要跳过sheet5,那么可以输入这样的公式:=SUM(Sheet2:Sheet7!A1)-sheet5!A1。或者 =SUM(Sheet2:Sheet4!A1,Sheet6:Sheet7!A1)。
3、如果工作表名称中有空格、括号需要在工作表名称上加上单引号, 比如:='sheet 5'!A1 =SUM('Sheet2:Sheet2 (1)'!A1) 。
温馨提示:答案为网友推荐,仅供参考
第1个回答  2016-07-17

各工作表中这个位置有无空格(没有内容),各工作表名命名有无规则?

如无空格,下面公式适用。如有空格,下面公式结果会出错,认为是0。也就是说,公式无法分辨0和空格,都会当成0来处理。如下图:

第2个回答  2016-07-17
用VBA吧。按Alt+F11,调出VBE编辑窗口,假设您要将每个工作表的A1单元格复制到当前单元格A列,从A1开始。插入如下代码
Sub copyA1()
Dim sht As Worksheet,i As integer
i = 1 '如果要从A2开始写入,那么该入就写i=2
For Each sht In Worksheets
Cells(i, 1).Value = sht.Range("A1").Value '如果要读取每个工作表的E3单元格,那该处的A1就改为E3
i = i + 1
Next sht
End Sub

点击运行即可。追问

你好,我试了,可以的,如果需要提取多个同一位置的内容呢?在新表里组成不同的列,又如何做到?如果是合并的单元格又如何引用?

本回答被提问者采纳
相似回答