I don't think I've explained the problem clearly. I have the save button
setup the way you define in your example. How do I capture if the user
changes a bound item on a form and tries to close the form without clicking
on the save button first. There is no close button on the form, a form is
closed by a parent form when another form is opened. I need to determine
when the form is closed but still is dirty. THe unload and close events
don't work in that situation.
"Jeanette Cunningham" wrote:
> You can code the save button like this:
>
> Private Sub btnSave_Click()
> Dim strMsg As String
> strMsg = strMsg & "Save Changes?" & Chr(13) & Chr(13)
>
> If Me.Dirty = True Then
> If MsgBox(strMsg, vbQuestion + vbYesNo, "Please Confirm!") = vbYes Then
> Me.Dirty = False
> Else
> Me.Undo
> End If
> End If
> End Sub
>
> You will need some error handling to trap errors if something stops the
> save, for example a required field missing.
>
>
> Jeanette Cunningham MS Access MVP -- Melbourne Victoria Australia
>
> "PeterM" <(E-Mail Removed)> wrote in message
> news:E5B3554A-93AE-4BA9-8D54-(E-Mail Removed)...
> >I have a AC2003 bound form. The condition I'm trying to capture is if the
> > user modifies any item on the form and they close the form without saving
> > changes. Simple...right? I found out that Form_Close doesn't work so I
> > tried the following code in the Form_Unload event and that isn't working
> > either. It does not even trigger the event. Can someone please tell me
> > what
> > I'm doing wrong? I would be much appreciated.
> >
> > Private Sub Form_Unload(Cancel As Integer)
> > If Me.btnSave.Enabled Then
> > Dim strMsg As String
> > strMsg = strMsg & "Save Changes?" & Chr(13) & Chr(13)
> > If MsgBox(strMsg, vbQuestion + vbYesNo, "Please Confirm!") = vbYes
> > Then
> > DoCmd.DoMenuItem acFormBar, acRecordsMenu, acSaveRecord, ,
> > acMenuVer70
> > Else
> > Cancel = True
> > End If
> > End If
> > End Sub
> >
>
>
> .
>
|