Solved

Access 2007 VBA err handling not working

Posted on 2011-02-17
4
248 Views
Last Modified: 2012-05-11
I am building my error catching routines on a new dbase and the error handling does not seem to work in any case. I have my error handling set to BREAK IN CLASS MODE.
Code is standard error handling as below.

The code breaks and displays the error popup.

Public sub some_action()
on Error goto errhandler

 ' some code
exit sub
errhandler:
Resume err1
err1:
'some action that logs the error and returns user to 'beginning of program

End Sub

Open in new window

0
Comment
Question by:JP_TechGroup
  • 2
4 Comments
 
LVL 120

Accepted Solution

by:
Rey Obrero (Capricorn1) earned 250 total points
ID: 34917337
try the setting

break on all errors

and, then

break on unhandled errors
0
 
LVL 57

Assisted Solution

by:Jim Dettman (Microsoft MVP/ EE MVE)
Jim Dettman (Microsoft MVP/ EE MVE) earned 250 total points
ID: 34917526
Besides the setting (which is your main problem), you also want a change in structure a bit:

Public sub some_action()
  on Error goto errhandler

   ' some code
Exit_some_Action
   ' Do cleanup
   exit sub

errhandler:
     'some action that logs the error or handles the error
     Resume Exit_some_Action
or
     Resume Next
or
     Resume

End Sub
0
 

Author Comment

by:JP_TechGroup
ID: 34919733
JD, the code example uses:
exit sub
errhandler:
Resume err1
err1:
'action to take
end sub

Is there some reason why the label "err1" should be in the sub before the exit? I've tried it and it makes no difference that I can see.
Also, I have tried all three options (though usually I use break on unhandled errors) with the same result.
Further experimentation shows that this does catch some errors, but not others....
0
 
LVL 57
ID: 34920192

  One should only Resume after the error has been handled, not before.  And you don't want to exit without issuing a resume of some type as you leave the error handler active then.

JimD.
0

Featured Post

Industry Leaders: We Want Your Opinion!

We value your feedback.

Take our survey and automatically be enter to win anyone of the following:
Yeti Cooler, Amazon eGift Card, and Movie eGift Card!

Question has a verified solution.

If you are experiencing a similar issue, please ask a related question

AutoNumbers should increment automatically, without duplicates.  But sometimes something goes wrong, and the next AutoNumber value is a duplicate.  This article shows how to recover from this problem.
In Part II of this series, I will discuss how to identify all open instances of Excel and enumerate the workbooks, spreadsheets, and named ranges within each of those instances.

685 members asked questions and received personalized solutions in the past 7 days.

Join the community of 500,000 technology professionals and ask your questions.

Join & Ask a Question