View Single Post
  #5  
Old May 30th, 2006, 10:56 AM posted to microsoft.public.access.forms
external usenet poster
 
Posts: n/a
Default Cancel button question

Douglas I've used this code and it seems to work OK

Private Sub cmdcancel_Click()
Dim strMsg As String

On Error GoTo Err_cmdcancel_Click
strMsg = "You haven't changed any data. Do want to close the form"

If Me.Dirty = False Then
If MsgBox(strMsg, vbQuestion + vbYesNo, "Close form?") = vbYes Then
DoCmd.Close
End If
Else
DoCmd.DoMenuItem acFormBar, acEditMenu, acUndo, , acMenuVer70
End If
Exit_cmdcancel_Click:
Exit Sub

Err_cmdcancel_Click:
MsgBox Err.Description
Resume Exit_cmdcancel_Click

End Sub

Can you see anything I might change?
Thanks
Tony
"Douglas J Steele" wrote in message
...
What's your code for cancelling look like?

Did you try to see whether it works?

--
Doug Steele, Microsoft Access MVP
http://I.Am/DougSteele
(no e-mails, please!)


"Tony Williams" wrote in message
...
Thanks Douglas. is that as simple as
"If Me.Dirty = True Then Magbee"
Will this intercept the Access message?
Thanks
Tony

"Douglas J Steele" wrote in message
...
Check whether the form's Dirty property is set to True. If it isn't,

they
haven't made any changes.

--
Doug Steele, Microsoft Access MVP
http://I.Am/DougSteele
(no e-mails, please!)


"Tony Williams" wrote in message
...
I have a number of forms with a cancel button. If the user clicks on

the
cancel button they get a standard Access message box. I want the use
to
see
a box that says "You haven't changed anything? There is nothing to
cancel.
Did you mean to Close the form? If so click Yes"
And the message box would have yes/ no buttons. The creation of the
message
box is OK I can do that but how do intercept the Access message box
and
what
code do I need to use to check whether anything has changed?
Thanks
Tony