我正在尝试编写VBA宏,以便将数据从一个工作簿复制到另一个工作簿。代码没有引发错误,但子例程在“复制”步骤退出并跳回到父子例程。如果我编写了“复制”步骤的代码,代码将按预期运行。
我已经在测试例程中测试了“复制”步骤中的代码,如果所有内容都在同一工作簿中,该代码可以正常工作。我不确定在两个工作簿之间切换时会发生什么情况。
wbk_main是在模块级别定义的。
如有帮助,敬请谅解。子程序如下:
Sub GetSheets(wbkName)
Dim ws As Worksheet
Dim i As Integer
Dim wbk As Workbook
Dim wb_Name As String
Set wbk = Application.Workbooks(wbkName)
i = 1
For Each ws In wbk.Worksheets
wb_Name = ws.Name
If InStr(wb_Name, "15") Then
MsgBox wb_Name
wbk_main.Sheets.Add After:=wbk_main.Sheets(wbk_main.Sheets.Count)
wbk_main.ActiveSheet.Name = wb_Name
wbk_main.ActiveSheet.Range("A1") = "Reviewer"
wbk_main.ActiveSheet.Range("B1") = "Criterion"
wbk_main.ActiveSheet.Range("C1") = "Type"
wbk_main.ActiveSheet.Range("D1") = "Level"
wbk_main.ActiveSheet.Range("E1") = "Comment"
wbk_main.ActiveSheet.Range("A1:E1").Font.Bold = True
wbk.Sheets(wb_Name).Range([A39], [H39].End(xlDown)).Copy wbk_main.Sheets(wb_Name).Range("A2")
MsgBox "Done"
End If
i = i + 1
Next ws
End Sub
期望子例程将数据从一个工作表复制到另一个工作表。但是,子例程退出并跳回到父例程。
1条答案
按热度按时间cu6pst1q1#
从其他工作簿导入数据