Reply
 
LinkBack Thread Tools Search this Thread Display Modes
  #1   Report Post  
Posted to microsoft.public.excel.programming
external usenet poster
 
Posts: 18
Default BeforeClose Event

Hi,

I have an Excel 2003 template that I need some help with. When the user
opens the template generating an xls file based on the template, I have code
that disables all builtin commandbars and creates a custom one with just a
couple of buttons. On the BeforeClose event I reinstate the builtin commbars
and the custom bar is disabled. Here's the problem. When the user clicks
the application close button, they get the "Do you want to save
changes......" message. The builtin menu gets enabled at that time and if
the user cancels the message, could potentially change the information in the
header/footer through Page Setup. I've tried a few things such as
Application.DisplayAlerts = false (didn't work - still prompts).

When I added ActiveWorkbook.Close SaveChanges:=False, it worked but causes
the user has to click the Application close button 2 times to close Excel.
And, when you re-open Excel afterward the formular bar doesn't appear. See
my code below.

Thanks for your help
LeAnn

Private Sub Workbook_BeforeClose(Cancel As Boolean)
Dim oCB As CommandBar

On Error Resume Next

ActiveWorkbook.Close SaveChanges:=False

For Each oCB In Application.CommandBars
oCB.Enabled = True
Next oCB

Application.DisplayFormulaBar = True

End Sub

  #2   Report Post  
Posted to microsoft.public.excel.programming
external usenet poster
 
Posts: 18
Default BeforeClose Event

I figured out my own solution. I had to set some boolean variables to detect
what actions the user has taken and allow or disallow other actions.

"LeAnn" wrote:

Hi,

I have an Excel 2003 template that I need some help with. When the user
opens the template generating an xls file based on the template, I have code
that disables all builtin commandbars and creates a custom one with just a
couple of buttons. On the BeforeClose event I reinstate the builtin commbars
and the custom bar is disabled. Here's the problem. When the user clicks
the application close button, they get the "Do you want to save
changes......" message. The builtin menu gets enabled at that time and if
the user cancels the message, could potentially change the information in the
header/footer through Page Setup. I've tried a few things such as
Application.DisplayAlerts = false (didn't work - still prompts).

When I added ActiveWorkbook.Close SaveChanges:=False, it worked but causes
the user has to click the Application close button 2 times to close Excel.
And, when you re-open Excel afterward the formular bar doesn't appear. See
my code below.

Thanks for your help
LeAnn

Private Sub Workbook_BeforeClose(Cancel As Boolean)
Dim oCB As CommandBar

On Error Resume Next

ActiveWorkbook.Close SaveChanges:=False

For Each oCB In Application.CommandBars
oCB.Enabled = True
Next oCB

Application.DisplayFormulaBar = True

End Sub

Reply
Thread Tools Search this Thread
Search this Thread:

Advanced Search
Display Modes

Posting Rules

Smilies are On
[IMG] code is On
HTML code is Off
Trackbacks are On
Pingbacks are On
Refbacks are On


Similar Threads
Thread Thread Starter Forum Replies Last Post
BeforeClose event help [email protected] Excel Programming 3 June 22nd 07 10:02 AM
BeforeClose Event JT Excel Programming 2 April 10th 07 03:52 PM
How to get out of BeforeClose event without closing? 42N83W Excel Programming 4 March 11th 05 05:33 PM
ThisWorkBook BeforeClose Event David Adamson[_4_] Excel Programming 0 July 29th 04 12:32 AM
Cancelling the BeforeClose Event Troy[_5_] Excel Programming 6 December 2nd 03 06:40 AM


All times are GMT +1. The time now is 09:08 AM.

Powered by vBulletin® Copyright ©2000 - 2024, Jelsoft Enterprises Ltd.
Copyright ©2004-2024 ExcelBanter.
The comments are property of their posters.
 

About Us

"It's about Microsoft Excel"