如何把多个相同工作簿数据汇总到一个工作簿内.doc
文本预览下载声明
发下去的表都是一样,收上来汇总的时候一个个打开复制粘贴汇总太麻烦,有个代码就万事大吉。
将需要合并的excel工作簿文件放置在一个文件夹中。
在文件夹内新建一个excel表,用于汇总,双击打开,鼠标在表格右下角的标签页sheet1上右键,选择 查看代码
粘贴如下代码:
Sub CombineFiles()
Dim path As String
Dim FileName As String
Dim LastCell As Range
Dim Wkb As Workbook
Dim WS As Worksheet
Dim ThisWB As String
Dim MyDir As String
MyDir = ThisWorkbook.path ChDriveLeft(MyDir, 表1) find all the excel files
ChDir MyDir
Match =Dir$()
ThisWB = ThisWorkbook.Name
Application.EnableEvents = False
Application.ScreenUpdating = False
path = MyDir
FileName = Dir(path \*.xls, vbNormal)
Do Until FileName =
If FileName ThisWB Then
Set Wkb = Workbooks.Open(FileName:=path \ FileName)
For Each WS In Wkb.Worksheets
Set LastCell = WS.Cells.SpecialCells(xlCellTypeLastCell)
If LastCell.Value = And LastCell.Address = Range($A$1).Address Then
Else
WS.Copy After:=ThisWorkbook.Sheets(ThisWorkbook.Sheets.Count)
End If
Next WS
Wkb.Close False
End If
FileName = Dir()
Loop
Application.EnableEvents = True
Application.ScreenUpdating = True
Set Wkb = Nothing
Set LastCell = Nothing
End Sub
其中,代码中的“表1”,可以是文件夹内的任意一个文件名
若代码框内无红色标记,表明代码正确,单击运行,或按F5运行;若代码框内有红色标记,检查代码是否粘贴完整。
运行完毕后(上图左上窗格不再跑数据),关闭该窗口。
检查汇总后的excel表格,删除不需要的空表。
下面开始汇总数据
在汇总好了的工作簿上新建一个工作表
例如要汇总表1-表4的A1格的数据:
在A1格内输入 =sum(),向右把光标移至括号内,点击表1的A1,按住shift,点击表4,此时汇总的表格内显示的是
点击回车,出现统计数据。拖动黑色十字,出现汇总数据。
显示全部