【发布时间】:2016-02-22 23:12:18
【问题描述】:
您好,我有以下代码将给定文件夹中所有工作簿的所有工作表复制到单个工作簿。我需要修改此代码以仅复制所有工作簿上的活动工作表(现在它复制所有工作表)。你能帮我解决这个问题吗?
Option Explicit
Sub CombineFiles()
Dim Path As String
Dim FileName As String
Dim Wkb As Workbook
Dim WS As Worksheet
Application.EnableEvents = False
Application.ScreenUpdating = False
Path = "C:\" 'Change as needed
FileName = Dir(Path & "\*.xlsx", vbNormal)
Do Until FileName = ""
Set Wkb = Workbooks.Open(FileName:=Path & "\" & FileName)
For Each WS In Wkb.Worksheets
WS.Copy After:=ThisWorkbook.Sheets(ThisWorkbook.Sheets.Count)
Next WS
Wkb.Close False
FileName = Dir()
Loop
Application.EnableEvents = True
Application.ScreenUpdating = True
End Sub
【问题讨论】: