我正在使用 Excel VBA,但我认为这是一个相当普遍的问题。
我有以下声明
Public newReport As Excel.Workbook
稍后在代码中,打开并命名一个 xlsx 文件后,MyBook.xlsx
我将这个变量指向该文件:
Set newReport = Excel.Workbooks("MyBook.xlsx")
我又有点困惑了。可变行为。如果我稍后打开 MyBook.xlsx 并执行ActiveWorkbook.SaveCopyAs
并给它一个新名称说 MyBookNew.xlsx 将变量newReport
指向新工作簿吗?
相关代码示例如下:
Public newReport As Excel.Workbook
Sub FileExperiment()
Set newReport = Excel.Workbooks.Add
newReport.SaveAs ThisWorkbook.Path & "\MyBook.xlsx"
Set newReport = Excel.Workbooks("MyBook.xlsx")
ActiveWorkbook.SaveCopyAs ThisWorkbook.Path & "\MyNewBook.xlsx"
newReport.Close False
End Sub