我在Windows 7 Professional安装程序上使用Excel 2003。在我的Personal.xls文件中,我编译了从不同位置获取的代码段/公式的片段,以便在使用Excel时可以随时参考。这些包含许多易失性函数,例如cell()
,rand()
,today()
等。因此,当我关闭Excel时,它询问我是否要保存Personal.xls。
我想保持我的Personal.xls原样,但是以某种方式禁用弹出窗口。我可以保存,也可以不保存,因为我不会更改Personal.xls。
我已经在Workbook_BeforeClose
部分的personal.xls中尝试了以下代码
Private Sub Workbook_BeforeClose(Cancel As Boolean)
ThisWorkbook.Save
End Sub
但是它似乎不起作用。我尝试了一些变体,包括.Save
和.Saved=True
,并且还尝试使用ThisWorkbook.
,Me.
和Workbooks("PERSONAL.xls")
。但是,Excel仍然要求我保存Personal.xls
我也曾尝试在Personal.xls中禁用计算。
Private Sub Workbook_Open()
For Each ws In ThisWorkbook.Worksheets
ws.EnableCalculation = False
Next
End Sub
这也不能解决问题。最后,在将计算模式更改为手动后,我尝试执行“ ThisWorkbook.Save”,但这也没有任何改变。
我在这里想念什么吗?任何意见,将不胜感激。预先感谢!
您想要:
Me.Save
在您的工作簿中,BeforeClose事件。
我不确定这是否对您有帮助,但是我已经尝试过跑步并且可以保存。.请不要拒绝投票,它确实对您有用。
我只是删除取消为布尔值
Private Sub Workbook_BeforeClose()
ThisWorkbook.Save
End Sub
为什么不仅仅强制关闭文档?
Private Sub Workbook_BeforeClose(Cancel As Boolean)
ThisWorkbook.Close savechanges:=True
End Sub
实际上,我实际上正在使用savechanges:=False
。两种方法都有效。