【发布时间】:2018-09-21 04:24:16
【问题描述】:
尝试将工作簿上的工作表复制到另一个工作表时,我不断收到超出范围错误。原始电子表格 (Master_Data.xlsm) 是运行 vba 脚本的内容。脚本打开另一个电子表格,对其进行操作,然后复制最终工作表以粘贴到 Master_Data.xlsm 工作簿中。
Sub Result_Scrapper()
Dim wb As Workbook, ws As Worksheet, wbFile As Object
Dim masterBook As Workbook
Dim wsa As Worksheet
Dim year As Integer
Set fso = CreateObject("Scripting.FileSystemObject")
Set fldr = fso.GetFolder("C:\Users\Output_Spreadsheets\")
Set masterBook = Excel.Workbooks("Master_Data.xlsm")
Application.ScreenUpdating = False
For Each wbFile In fldr.Files
If fso.GetExtensionName(wbFile.Name) = "xlsm" Then
Set wb = Workbooks.Open(wbFile.Path)
'Copy sheet of interest
ActiveSheet.Copy 'Before:=ThisWorkbook.Sheets(“A”) 'tried doing it using before statement but it also caused errors
'paste sheet into masterBook spread--this is where the error comes
masterBook.Sheets(Sheets.Count).Paste
End If
masterBook.Sheets("master").Name = Right([A2], 30)
Next wbFile
【问题讨论】:
-
Excel copy worksheet的可能重复
-
@UriGoren 错误目标,这是 C# 代码
标签: vba excel copy-paste worksheet