我在Excel中創建了一個簡單的宏以打開另一個工作簿並將工作表複製到工作簿中。這對於普通的xls文件非常適用,但是當我嘗試在包含宏的.xltm文件上使用它時,由於它包含的宏,我得到了一個越界錯誤。VBA:從包含宏的其他工作簿導入工作表
在Excel vba中是否有任何可能的方式來打開一個工作簿,並在其中包含宏的複製和工作表?
我的代碼
Dim directory As String, fileName As String, sheet As Worksheet, total As Integer
Application.ScreenUpdating = False
Application.DisplayAlerts = False
directory = "c:\"
fileName = Dir(directory & "book1.xls")
Workbooks.Open (directory & fileName)
For Each sheet In Workbooks(fileName).Worksheets
total = ThisWorkbook.Worksheets.Count
Workbooks(fileName).Worksheets(sheet.Name).Copy after:=ThisWorkbook.Worksheets(total)
Next sheet
謝謝你們,
只需指出'For Each sheet'循環中,您可以簡單地使用'sheet'而不是'Workbooks(fileName).Worksheets(sheet.Name)' – user3598756