在本文中,我们将学习如何在Microsoft Excel 2010中使用VBA来关闭工作簿。在VBA宏/代码执行了所有必需的操作之后,您可能希望宏要么保存文件,要么跳过保存文件。因此,这里是您在要求其关闭文件时可以在代码中设置的选项。VBA中的Close and Open方法可用于关闭和打开工作簿。

如果您希望代码仅关闭文件而不保存更改,请在代码末尾或需要的地方使用此行-_ActiveWorkbook.Close(False)_或_ActiveWorkbook.Close False_或_ActiveWorkbook.CloseSaveChanges:= FALSE_请参阅下图中的代码。要复制代码,请在确保打开Excel工作表的同时按键盘上的Alt + F11键。然后右键单击“ Microsoft Excel对象”,然后选择“插入”。然后单击模块。复制图片下方给出的代码-

Option Explicit Sub macro1() ActiveWorkbook.Close False _End Sub_注意:您可以更改文本ActiveWorkbook来引用工作簿的名称,或根据代码来标识工作簿的变量。

img1

如果希望代码在关闭文件时保存更改,请使用_ActiveWorkbook.Close(True)或_ActiveWorkbook.Close True_或_ActiveWorkbook.Close保存更改:= TRUE

这里是代码– Option Explicit Sub macro1() ActiveWorkbook.Close True End Sub_但是,如果要由用户决定,则只需输入_ActiveWorkbook.Close

img2

这是代码– Option Explicit Sub macro1() ActiveWorkbook.Close _End Sub_用户将看到一个弹出窗口,询问他们是否要保存工作簿。

img3

_Workbooks(“ File1.XLS”)。关闭SaveChanges:= False_本示例将关闭File1.xls并放弃对其所做的任何更改。

img4

结论:

如果将“ Application.DisplayAlerts”设置为False,将不会弹出任何窗口,并且工作簿将直接关闭而不提示保存。

如果在excel vba Activeworkbook.Close代码行之前的任何位置,“ Application.DisplayAlerts”未设置为False,则将显示此弹出窗口。

因此,即使代码要求您关闭警报,也请确保在Activeworkbook.Close行之前显示“ Application.DisplayAlerts = True”。

如果您喜欢我们的博客,请在Facebook上与您的朋友分享。您也可以在Twitter和Facebook上关注我们。

我们希望收到您的来信,请让我们知道我们如何改进,补充或创新我们的工作,并为您做得更好。写信给我们[email protected]_ __