标签:
把所需合并的Excel文档放在同一个文件夹中,再文件夹中新建一个Excel打开Excel,按ALT+F11,或
依次点工具,宏,VB编辑器,弹出的编辑器中点插入模块,新弹出的空白窗口中输入以下代码:
Sub 合并当前目录下所有工作簿的全部工作表() Dim MyPath, MyName, AWbName Dim Wb As Workbook, WbN As String Dim G As Long Dim Num As Long Dim BOX As String flag = 0 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 With Workbooks(1).ActiveSheet For G = 1 To Sheets.Count If flag = 0 Then //这里我为了需要做了判断,如果是第一个文档把头部标题也带上,不是就只拷贝内容 Wb.Sheets(G).UsedRange.Copy .Cells(.Range("A65536").End(xlUp).Row, 1) flag = 1 Else Wb.Sheets(G).Range("a2", Wb.Sheets(G).Cells.SpecialCells(xlCellTypeLastCell)).Copy .Cells(.Range("A65536").End(xlUp).Row + 1, 1) End If Next WbN = WbN & Chr(13) & Wb.Name Wb.Close False End With End If MyName = Dir Loop Range("A1").Select Application.ScreenUpdating = True MsgBox "共合并了" & Num & "个工作薄下的全部工作表。如下:" & Chr(13) & WbN, vbInformation, "提示" End Sub
保存---点执行键OK !!!
标签:
原文地址:http://www.cnblogs.com/DG-Denny/p/4866163.html