VBA在开发工具,找不到开发工具的可以在设置里面调出来,F5运行。
1.合并多个工作簿的工作表到同一工作簿
合并工作簿内的工作表到同一文件夹,先把要合并的工作簿放在同一个文件夹里(注意工作簿的格式),运行代码。
Sub MergeWorkbooks()
'Updated by Extendoffice 2019/2/20
Dim xStrPath As String
Dim xStrFName As String
Dim xWS As Worksheet
Dim xMWS As Worksheet
Dim xTWB As Workbook
Dim xStrAWBName As String
On Error Resume Next
xStrPath = "-----此处录入文件夹地址-----"
xStrFName = Dir(xStrPath & "*.xls")
Application.ScreenUpdating = False
Application.DisplayAlerts = False
Set xTWB = ThisWorkbook
Do While Len(xStrFName) > 0
Workbooks.Open Filename:=xStrPath & xStrFName, ReadOnly:=True
xStrAWBName = ActiveWorkbook.Name
For Each xWS In ActiveWorkbook.Sheets
xWS.Copy After:=xTWB.Sheets(xTWB.Sheets.Count)
Set xMWS = xTWB.Sheets(xTWB.Sheets.Count)
xMWS.Name = xStrAWBName & "(" & xMWS.Name & ")"
Next xWS
Workbooks(xStrAWBName).Close
xStrFName = Dir()
Loop
Application.ScreenUpdating = True
Application.DisplayAlerts = True
End Sub
鸣谢代码参考来自:
https://zh-cn.extendoffice.com/documents/excel/456-combine-multiple-workbooks.html
遇到问题:运行后表格名未重命名,该问题待处理。