Instructie Resume

Wist de foutgegevens en geeft aan wat er vervolgens moet worden uitgevoerd.

Syntaxis:

Diagram instructie Resume


     Resume [ [0] | label | Next ]
   

Parameters:

0: wis de foutgegevens en probeer de instructie waarin de fout optrad opnieuw uit te voeren. 0 is optioneel.

label: Wis de foutgegevens en vervolg de uitvoering bij het aangegeven label in de huidige subroutine.

Next: Wis de foutinformatie en vervolg de uitvoering na de instructie waarin de fout optrad.

De foutgegevens worden verzameld met de functies Erl, Err en Error$.

tip

Door Resume te gebruiken om de foutgegevens te wissen wordt voorkomen dat er foutafhandeling plaatsvindt in de routines die de aanroep hebben gedaan.


Foutcodes:

20 Hervatten zonder fout

Voorbeelden:

Typische foutafhandeling betreft: de fout melden aan de gebruiker, het herstellen van de fout, het loggen van de de fout en het omzetten naar een fout met aanvullende informatie over oorzaak en mogelijke oplossingen. Gebruik Resume label wanneer u een dergelijk mechanisme wilt gebruiken.


      Sub Error_Handling
      try: On Error GoTo catch
          ' hier komt de code van de routine
          Error 91 ' voorbeeld van een fout
      finally:
          ' hier komt code van de routine om wat op te ruimen
          Exit Sub
      catch:
          Print Erl, Err, Error$
          Resume finally
      End Sub ' Error_Handling
    

Gebruik Resume Next wanneer de afwijking optreedt in een iteratief proces dat niet mag worden onderbroken, hierbij is mogelijk meerdere keren een foutafhandeling nodig.


      Sub Iteration
          planets = Array("☿","♀","♁","♂","♃","♄","⛢","♆")
      try:
          On Error GoTo ReportAndProcessNext
          For ndx = -3 To 11 Step 1
              MsgBox planets(ndx)
          Next
          On Error GoTo 0 ' Stop error catching
      finally:
          Exit Sub
      ReportAndProcessNext:
          Print "Error "& Err &" at line "& Erl &" - "& Error$
          Resume Next
      End Sub ' Iteration
    
warning

Het gebruiken van Resume zonder parameters om de instructie, die fout is gelopen, nogmaals uit te voeren kan in bepaalde gevallen goed zijn, maar het kan ook tot een situatie leiden dat dezelfde fout steeds blijft optreden.


Help ons, alstublieft!