工作中我们不免会碰到一种情况就是,多分数据表格的合并汇总操作。可能很多朋友碰到这样的情况的时候,就是简单的复制粘贴的操作,这样不仅耗时耗力,而且效果还很差。下面我们就来学习一下,Excel中全部5种多工作表数据合并操作。
方法1:sum函数与通配符进行多表数据汇总函数=sum('*'!B2)
讲解:通过用sum用通配符*求和的方式来求出每张工作表对应位置的数据之和进行汇总。这个案例需要注意的重点有2个:
1.1 通配符*代表的是任意工作表中的B2单元格;
1.2 A产品、B产品、C产品等不同产品工作表和汇总表中数据汇总区域,姓名和月份的数据位置都需要保持一致,位置不能错乱。
方法2:sum函数非通配符情况下的多表数据汇总函数=sum(产品A:产品C!B2)
讲解:这个函数跟方法1中的通配符搭配的方法原理一致,同样是需要每张工作表数据对应的位置需要相同。
方法3:INDIREC跨工作表数据汇总函数=INDIRECT(B$1&"!B"&ROW())
解析:在这里我们通过取不同工作表名称作为汇总数据的行标题,利用INDIRECT函数调用B1单元格提取对应工作表的数据。其中ROW()代表返回当前的行的值。如函数中B&ROW()=B2单元格。
方法4:工作表不规则数据情况下数据透视表汇总操作方法:
4.1 依次按alt、D、P等按键,进入数透视表透视向导图界面,选择多表合并计算区域;
4.2 依次分别选择每张工作表对应区域,添加区域后点击下一步,点击创建新工作表。
讲解:这样的操作是利用了数据透视表汇总的方法,来添加在每张页面产品关键词对应的位置都不一样的时候的操作方法。
方法5:VBA代码一键数据汇总代码如下:
Sub 多表合并()
Dim i%, rs%, rss%, st As Worksheet, ast As Worksheet
Set zst = Sheet4 '将汇总工作表第一季度定义为变量zst
For i = 1 To 3
Set st = Sheets(i & "月") '将1-3月的工作表定义为变量st
rs = st.UsedRange.Rows.Count '计算1-3月每个表的最后一行
rss = zst.UsedRange.Rows.Count 1 '计算第一季度工作表的最后一行的下一行
st.Range("A2:B" & rs).Copy Cells(rss, 1) '复制1月、2月、3月每个工作表的数据到第一季度的汇总表中
Cells(rss, 3).Resize(rs - 1) = i & "月" '将1-3月工作表的工作吗写入到汇总表对应的月份当中
Next
End Sub
现在你学会如何进行多工作表数据汇总了吗?