VBA - “另存为”后工作簿的对象会发生什么?

时间:2018-04-23 21:19:48

标签: excel vba save-as

我正在开发一个宏,想知道这个,以避免任何错误或崩溃。

方案: 我有一个文件,它执行所有处理(宏文件)。我的代码打开一个预先存在的excel(模板)文件,然后将一些内容写入其中,然后将其另存为特定位置。 对于打开预先存在的文件,我使用的是:

Set SOWbk = Workbooks.Open(FileName:=SOFileName, ReadOnly:=True)

保存作为此文件,我正在使用:

SOWbk.SaveAs FileName:=ThisWorkbook.Path & "\" & TextBox13.Value & "_SO.xlsm", FileFormat:=52

问题: 1.在另存为之后,原始文件(模板)是否保持打开状态,无论如何我必须关闭它? 2.“SOWbk”对象是否自动获取新保存的文件的引用?

我也尝试在Google和Stack上搜索此内容。我没有找到任何帮助。提前谢谢你的帮助!非常感谢。

1 个答案:

答案 0 :(得分:2)

对问题1的回答:旧工作簿是否在SaveAs

之后保持打开状态

没有。您打开存储在位置A中的工作簿A.使用SaveAs功能时,将打开的工作簿的“当前版本”(与位置A中存储的不同)保存到位置B现在打开的文件是文件B,可以说。

对问题2的回答:Workbook Object

会发生什么

对象指的是我所说的工作簿B.解释与上面相同。打开的工作簿不是存储在位置A中的内容的表示。

enter image description here