工作栏在Workbook_BeforeClose中删除但如果用户单击取消则不会再次出现

时间:2014-12-17 20:48:47

标签: excel vba excel-vba

我有一个自定义工具栏,它是在Workbook_BeforeClose事件中打开并删除我的工作簿时创建的。但是,如果系统提示用户保存文件(关闭前)并单击取消,则文件未关闭,但我无法弄清楚如何自动重新创建工具栏。

此时是否会触发任何可以调用代码创建工具栏的事件?

1 个答案:

答案 0 :(得分:0)

您必须重新评估取消行程。

如果用户点击取消,则取消属性将设置为true。

你的代码看起来像这样:

Private Sub Workbook_BeforeClose(Cancel As Boolean)
     If Cancel = True Then
         'Do something on cancel
     Else
         'Do something when not cancelled
     End if
End Sub

或者,您只能检查取消是否为假,并且仅在这种情况下删除工具栏。

如果这不能满足您的需求,那么您可以向AfterSave方法添加代码并检查Success属性。