Stop debug when a docmd operation is cancelled

I am using the following code to open a form

Private Sub License_Certificate_Click()
DoCmd.OpenForm ("edit records")

End Sub

The record source for the form is a query which asks for the license number before opening. Everything works fine except for when you forget the license number and click cancel on the message box. This gives an error and opens the dedugging dialog box.

How do I stop the code from activating dedug when someone press cancel on the message box  
LVL 16
Who is Participating?
Leigh PurvisConnect With a Mentor Database DeveloperCommented:
Alas the answer is merely one of best practice anyway.
i.e. Error Handling.

It can be as blanketing as:

Private Sub License_Certificate_Click()
On Error Resume Next
    DoCmd.OpenForm "edit records"
End Sub

or decisive as:

Private Sub License_Certificate_Click()
On Error Goto ErrHere
    DoCmd.OpenForm "edit records"
    Exit Sub
    If Err <> 2501 Then
        Msgbox "Error other than form cancelled opening :-)"
    End If
End Sub

However the handling must be performed in the calling procedure.
For the error is raised in the method which attempted to open the form.  The form itself remains innocent. :-)
SheilsAuthor Commented:
Thanks LPurvis
Question has a verified solution.

Are you are experiencing a similar issue? Get a personalized answer when you ask a related question.

Have a better answer? Share it in a comment.

All Courses

From novice to tech pro — start learning today.