【发布时间】:2020-07-17 17:48:21
【问题描述】:
我正在尝试从包含 VBA 的第一个工作簿中打开两个工作簿,然后激活第二个工作簿中的特定工作表。代码如下,但由于某种原因,第二个工作簿中的工作表没有被激活。由于文件的名称和位置会有所不同,因此我在 VBA 文件中将它们作为参考,以便可以在前端而不是在代码中更改它们。
代码如下:
Sub OpenWorkbooks()
Application.ScreenUpdating = False
Dim srcFle, dataFle As String
Dim wb, wb1, wb2 As Workbook
srcFle = ActiveSheet.Range("C7").Value
dataFle = ActiveSheet.Range("C10").Value
Set wb = ThisWorkbook
Set wb1 = Workbooks.Open(srcFle)
Set wb2 = Workbooks.Open(dataFle)
wb1.Sheets("Sheet1").Activate
Application.ScreenUpdating = True
End Sub
提前致谢。
【问题讨论】:
-
试试
wb1.Sheets("Sheet1").Select? -
感谢 Dean,我尝试了您的建议,但它会生成运行时错误 1004 消息,提示工作表类的选择方法失败。
-
你确定
wb1中存在工作表吗? -
对,认为你需要先激活
wb1,激活/选择工作表。所以wb1.Activate那么我上面的那行应该可以了。