Data validation

G

Gordon

I am seeking to apply form level validation for two controls in the
before update event of my form. My code looks like this:

Private Sub Form_BeforeUpdate(Cancel As Integer)
Dim strMsg As String

' An error that is special cased.
Const conErrDoCmdCancelled = 2501
On Error GoTo Err_BeforeUpdate


If IsNull(Me.cboMedium) Then
Cancel = True
strMsg = strMsg & "Medium required." & vbCrLf
End If
If IsNull(Me.cboSubject) Then
Cancel = True
strMsg = strMsg & "Subject required." & vbCrLf
End If

If Cancel Then
strMsg = strMsg & "Correct the entry, or press <Esc> to undo."
MsgBox strMsg, vbExclamation, "Invalid entry."
End If

Exit_BeforeUpdate:
Exit Sub

Err_BeforeUpdate:
' If the action was cancelled by the user for
' some reason, don't display an error message.
' Instead, resume on the next line.
If (Err = conErrDoCmdCancelled) Then
Resume Next

End If

End Sub

The first part of the validation seems to work, but when I press OK I
get the annoying error message "The DoMenutem action was canceled"
which is why I have included the error trapping code relating to error
message 2501. But this is not doing what I hoped.

Can anyone see what I am doing wrong or suggest a better way to get
rid of this redundant message.

Thanks


Gordon
 
B

Baz

The error handling needs to be in the procedure which initiated the update
(a command button click event, perchance?)
 

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