合并一个表格中的多个表格(快速合并多个表格至一个表格)
合并一个表格中的多个表格(快速合并多个表格至一个表格)Dim Wb AsWorkbook WbN As String Dim MyPath MyName AWbName2、 在文件夹的空白处,新建一个表格并打开,右击sheet1表格——查看代码,会出现VBA编辑界面:3、 复制代码到窗口里,代码如下: Sub 合并当前目录下所有工作簿的全部工作表()
在工作中有时候我们需要将多个Excel表格合并到一个表格中。如果是二逼青年,会选择一个个复制,痛苦不堪。如果是佛系青年,那么就会选择用VBA来一键搞定多个Excel表格合并至一个表格。
请将1月至6月的表格合并在一个表格中。
操作步骤:
1、 如果以上表格不在同一个文件夹内,先复制到同一个文件夹内
2、 在文件夹的空白处,新建一个表格并打开,右击sheet1表格——查看代码,会出现VBA编辑界面:
3、 复制代码到窗口里,代码如下:
Sub 合并当前目录下所有工作簿的全部工作表()
Dim MyPath MyName AWbName
Dim Wb AsWorkbook WbN As String
Dim G As Long
Dim Num As Long
Dim BOX As String
Application.ScreenUpdating= False
MyPath =ActiveWorkbook.Path
MyName =Dir(MyPath & "\" & "*.xls")
AWbName =ActiveWorkbook.Name
Num = 0
Do While MyName<> ""
If MyName<> AWbName Then
Set Wb =Workbooks.Open(MyPath & "\" & MyName)
Num = Num 1
WithWorkbooks(1).ActiveSheet
.Cells(.Range("B65536").End(xlUp).Row 2 1) = Left(MyName Len(MyName) - 4)
For G = 1 ToSheets.Count
Wb.Sheets(G).UsedRange.Copy.Cells(.Range("B65536").End(xlUp).Row 1 1)
Next
WbN = WbN &Chr(13) & Wb.Name
Wb.Close False
End With
End If
MyName = Dir
Loop
Range("B1").Select
Application.ScreenUpdating= True
MsgBox "共合并了"& Num & "个工作薄下的全部工作表。如下:" &Chr(13) & WbN vbInformation "提示"
End Sub
4、 单击宏计算菜单——运行——运行子过程,操作界面如下:
5、 等候大约十秒,就能把所有表格数据合并到一个表格中。
6、 打开新的表格,筛选,将多余的标题行删掉。
Gif操作如下: