Detecting a cancel on Workbook_BeforeClose event?

D

Don Wiss

Can I detect when a user selects cancel in a BeforeClose event? It appears
to me that the event has already been run when the user is asked if they
want to save, not save, or cancel. I don't see an AfterCancel event.

This as the BeforeClose is removing my Toolbar and I'd like to put it back
after a cancel.

Don <donwiss at panix.com>.
 
B

Bob Phillips

Don,

How about removing the toolbar in Workbook_Deactivate, and restore it in
Workbook_Activate as well as workbook_Open?

--

HTH

RP
(remove nothere from the email address if mailing direct)
 
D

Don Wiss

How about removing the toolbar in Workbook_Deactivate, and restore it in
Workbook_Activate as well as workbook_Open?

If in a Workbook_Activate it wouldn't need to be in a Workbook_Open. I am
using this way now. The only downside is when flipping between workbooks
that use the toolbar the toolbar disappears and then reappears. I haven't
yet found a way around this.

This is the code I'm calling on the Workbook_Activate:

Sub RestoreToolbar()
' called by button on Main sheet and workbook activate

Application.ScreenUpdating = False
If DoesToolBarExist("CasFacToolbar") Then
Application.CommandBars("CasFacToolbar").Visible = True
Else
If DoesProjectExist("CFRTAddIn") Then
Application.Run "'CFRT Add-In.xla'!NewToolBar"
Else
Workbooks.Open ActiveWorkbook.path & "\CFRT Add-In.xla"
End If
End If

End Sub

Function DoesToolBarExist(ToolBarName As String) As Boolean
' addin name is case sensitive. is project name, not file name
Dim CB As Object
DoesToolBarExist = False
For Each CB In Application.CommandBars
If CB.Name = ToolBarName Then DoesToolBarExist = True
Next
End Function




Don <donwiss at panix.com>.
 
B

Bob Phillips

Don Wiss said:
If in a Workbook_Activate it wouldn't need to be in a Workbook_Open. I am
using this way now. The only downside is when flipping between workbooks
that use the toolbar the toolbar disappears and then reappears. I haven't
yet found a way around this.

If you knew all the workbooks that use the toolbar, you could use
Application events, initiated from Personal.xls.
 

Ask a Question

Want to reply to this thread or ask your own question?

You'll need to choose a username for the site, which only take a couple of moments. After that, you can post your question and our members will help you out.

Ask a Question

Top