【发布时间】:2018-01-24 21:40:14
【问题描述】:
我正在尝试在 VBA 中编写一个宏,它将使用单元格中指定的 PathFile 打开另一个工作簿(这有效),更新使用宏的工作簿中的链接(不起作用)并关闭 PathFile工作簿(作品) 这是一个代码:
Sub UpdateRaw()
Dim CurrWb As Workbook
Dim FilePath As String
Dim book As Excel.Workbook
Set CurrWb = ActiveWorkbook
FilePath = Range("I1").Value
Dim app As New Excel.Application
app.Visible = True 'so we can see whether correct file is being opened
Set book = app.Workbooks.Open(FilePath)
CurrWb.Activate
Worksheets("Raw_vs_Actual").EnableCalculation = False
Worksheets("Raw_vs_Actual").EnableCalculation = True
book.Close SaveChanges:=False
app.Quit
Set app = Nothing
End Sub
一步一步地,我发现命令 CurrWb.Activate 不会带我回到我原来的工作文件。我怀疑通过打开新的 Excel 应用程序我无法回到 CurrWb (ActiveWorkbook)。有解决方法吗?我需要这个,所以我的 INDIRECT 函数不会返回 #REF。
我正在使用 Excel 2010,以防万一。
【问题讨论】: