On Error GoTo ... But wait!

M

monir

Hello;
Here's a simple illustration:
-------------------------------------------------------
Sub Test_1()
On Error GoTo myErrorHandler
For MyIndex = 1 To 40
....myCode1
Next myIndex
....myCode2
Exit Sub

myErrorHandler:
MsgBox "The non-linear multi-variant algorithm failed ..."
End Sub
--------------------------------------------------------
I would like to clear (or suppress) the Err object, if any run-time error
occurs within the For loops, until the For loops are complete.
If there's a run-time error for the current value of myIndex, then move to
the next value of myIndex.
If there's at least one error-free loop at the end of the For ... Next, then
ignor any run-time error(s) which might have been encountered and resume
next.
If there is no viable solution (i.e.; no error-free loop at the end of the
For ... Next), then GoTo myErrorHandler.

Could someone please show how-to accomplish that?
You might prefer to put the procedure in a separate routine to be called
from within the For ... Next.

Thank you kindly.
 
T

Tom Ogilvy

Sub Test_1()
On Error Resume Next
cnt = 0
For myIndex = 1 To 40

' your code

' just before the next
If Err.Number <> 0 Then
cnt = cnt + 1
Err.Clear
End If
Next myIndex
If cnt = 40 Then GoTo myErrorHandler
' ....myCode2
Exit Sub

myErrorHandler:
MsgBox "The non-linear multi-variant algorithm failed ..."
End Sub
 

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