We help IT Professionals succeed at work.

Check out our new AWS podcast with Certified Expert, Phil Phillips! Listen to "How to Execute a Seamless AWS Migration" on EE or on your favorite podcast platform. Listen Now


Close form without saving

Reaver2 asked
Medium Priority
Last Modified: 2008-03-17

How do I get a Close event never to prompt to save?

Basically, I have a procedure that modifies a form in design view before opening it.  When the user closes it (with X button or CTRL+F4), it always prompts to save changes.

I would make a Close button (docmd.Close (acSaveNo)), but the form is in Datasheet view.  Even if I had a button, the user could always use CTRL+F4, which I believe directly triggers the close event.

How can I get around this?

Basically, I just do not want a user to save these changes or even be bothered to do so!

Thank you.
Watch Question

Set the from properites to Allow edits to false?

woops... sorry.. read your post wrong


Tis ok.

I dont think you can...

Why are you changing (and how) the form in design view with code?

What are you changing, you should be able to run some code on the Load event to do most things..


It's a form in datasheet view.

A command button in another form opens it in design view, changes some textboxes' ColumnHidden property to True, then opens the form in Datasheet view.

This way, not every field is being shown, but only what the users wants to see.  But unfortunately, this means design changes that may or may not be saved (as Access think I want!).

Why not use a conintuous form in "normal view"... You can make it look like a datasheet, and not have the saving problem..

Tried that on the Close and it didnt seem to work...


I don't know if it is actually possible to modify an event like this.  There has to be an alternative.

Just make a form (continous) to make it look like a datasheet.  can be done, wont look exactly the same, but very very close


I know one solution.  I'll set SetWarnings to False.  Only thing:  When do I set it?!!  (Save warning occurs BEFORE unload event!)

I do not want to set it on Open event, because anything could happen.  Can anyone think of any messages that you would WANT to see?  I have deletions disallowed, so not showing that warning is not an issue.  What else would be a warning?

I'll set SetWarnings (False) on Open and SetWarnings (True) on Close. . . If there is no risk of missing an important warning.


But flavo, if the user enters CTRL+F4, it still calls the Close event.

>> if the user enters CTRL+F4, it still calls the Close event

But if its done as a continuos "normal" form looking like a datasheet, you wont have to go into the design mode to change everthing, it will be there.  It wont matter if they hit Ctrl+F4

Be carefull with SetWarnings, but at this stage i cant think of any thing that could happen, but ive never used datasheet view as i find it limited, as you have found out.
Did you see my link, Reaver? Maybe I was rerading your question wrong...

doesnt work, tested before



I agree, but I just like using Datasheet view because I'm just learning about Access.  One problem in my situation in using a form in "Tabular" format is that I have several (11) checkboxes, and each checkbox has a label above it.  It is just a hassle to design it because the labels are all squished together.

The other thing is that if I just set the Visible property of those Textboxes to False, then there would be a bunch of 'HOLES' in my table (which would require adjusting in Design View).  In a Datasheet, hiding columns makes the other fields squish together (if you know what I mean).

How can I work around this?


what about using the system function:

DoCmd.SetWarnings False

no warnings, hakuna matata.

<>< KT

bah, missed that you had that reaver2

/ignore phileoca

>> How can I work around this?

Dont add them in the first place.  You only need to add the thnigs you want.

It will take you id say about 30 mins at the most to do.


What do you mean flavo?  Don't add checkboxes?  My thing is that datasheet view makes it easier to hide fields.  In form view, if you hide a field, you have to manually MOVE all the other fields, which must be done in design view (or it will look ugly).

Any other ideas?


Why exactly are you trying to hide columns in the first place??

Why cant you hide them at design time (ie why not include them at all)??



I have a previous form with checkboxes that determine which fields the user will see in my particular form.  The user just hits a button to open my form, and will only see the fields which they checked off.

I want either to be able to hide fields in form view (so not a design change)
disable that SAVE dialog box.  I am tempted to use SetWarnings False.  But I don't want something important to be hidden.  (I have deletions disabled anyway.)

Is there a way to create a form on-the-run based on this form, and make design changes. . .Then delete the form or something when they close it.  (Something that will not make Access worry about saving.)


It has been solved:

The ColumnHidden property can be modified during a Form's run-time!  This is NOT a design change!

Thanks a LOT for all your collaboration!
Unlock this solution with a free trial preview.
(No credit card required)
Get Preview
Unlock the solution to this question.
Thanks for using Experts Exchange.

Please provide your email to receive a free trial preview!

*This site is protected by reCAPTCHA and the Google Privacy Policy and Terms of Service apply.


Please enter a first name

Please enter a last name

8+ characters (letters, numbers, and a symbol)

By clicking, you agree to the Terms of Use and Privacy Policy.