Anweisung Resume

Setzt Fehlerinformationen zurĂŒck und zeigt an, was als nĂ€chstes ausgefĂŒhrt werden soll.

Syntax:

Diagramm einer Anweisung Resume


     Resume [ [0] | label | Next ]
   

Parameter:

0: Setzt Fehlerinformationen zurĂŒck und fĂŒhrt die Anweisung, die den Fehler verursacht hat, erneut aus. 0 ist optional.

label: Setzt Fehlerinformationen zurĂŒck und setzt die AusfĂŒhrung am angegebenen Label des aktuellen Unterprogramms fort.

Next: Setzt die Fehlerinformationen zurĂŒck und fĂŒhrt die Anweisung aus, die der Anweisung folgt, welche den Fehler verursacht hat.

Fehlerinformationen werden mit den Funktionen Erl, Err und Error$ erstellt.

tip

Die Verwendung von Resume zum ZurĂŒcksetzen von Fehlerinformationen verhindert die Weitergabe der behandelten Bedingung an aufrufende Routinen.


Fehlercodes:

20 Resume ohne Fehler

Beispiele:

Typische Fehlerbehandlungsroutinen sind: Warnen des Benutzers, Beheben des Fehlers, Protokollieren von Fehlerinformationen oder erneutes Auslösen von benutzerdefinierten Fehlern, die ErklÀrungen mit Lösungsanweisungen bereitstellen. Verwenden Sie Resume label, wenn Sie solche Mechanismen benötigen.


      Sub Error_Handling
      try: On Error GoTo catch
          ' Routinecode gehört hier her
          Error 91 ' Beispielfehler
      finally:
          ' Routine-Bereinigungscode gehört hier her
          Exit Sub
      catch:
          Print Erl, Err, Error$
          Resume finally
      End Sub ' Error_Handling
    

Verwenden Sie Resume Next, wenn Sie beispielsweise Anomalien melden, die bei einem iterativen Prozess aufgetreten sind, der nicht unterbrochen werden darf. In diesem Fall können mehrere Behandlungsroutinen erforderlich sein.


      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

Die Verwendung von Resume ohne Parameter, um die fehlerhafte Anweisung erneut auszufĂŒhren, kann in bestimmten Situationen vorkommen. Dies kann jedoch zu einer nie endenden Schleife fĂŒhren.


Bitte unterstĂŒtzen Sie uns!