Excel VBA合并指定目录下所有工作簿的工作表

本文为《别怕,Excel VBA其实很简单(第3版)》随书问题参考答案

如果保存Excel文件的目录为D:\VBA其实很简单\,可以使用下面的过程:

Sub 合并工作表() Application.ScreenUpdating = False Dim FileName As String, Sht As Worksheet, Wb As Workbook FileName = Dir("D:\VBA其实很简单\*.xls?") Do While FileName "" Workbooks.Open FileName:="D:\VBA其实很简单\" & FileName Set Wb = ActiveWorkbook For Each Sht In Wb.Worksheets Sht.Copy after:=ThisWorkbook.Worksheets(ThisWorkbook.Worksheets.Count) Next Sht Wb.Close savechanges:=False FileName = Dir Loop Application.ScreenUpdating = TrueEnd Sub