title image


Smiley Vernünftige Fehlerbehandlung
Hinter "On Error" muss kein "Goto" stehen, da kann auch "Resume Next" kommen (wobei es natürlich sehr die Frage ist, ob und wieweit man nach einem Fehler "einfach so weitermachen" sollte...) und natürlich kann man im Fehlerbehandler auch eine Fehlerbehandlungsroutine aufrufen (unabhängig von der Goto/Resume-Frage) eine "richtige" Fehlerbehandlung sieht so aus:



Private Sub xxx()

Dim ...

On Error goto Er

Application.Echo=False ' beispielsweise!

Docmd.Hourglass True

...



Ex:

On error Resume next ' den folgenden Code ohne Fehlerbehandlung ausführen

Close x ' Objekte schließen usw.

Application.Echo=True

Docmd.Hourglass False

exit sub



Er:

Call Fehlerbehandler

Resume Ex

End sub



Mit der Möglichkeit, für Testzwecke die Fehlerbehandlung ausschalten:



Private Sub xxx()

Dim ...

#if DebugIt then

On Error goto 0

#else

On Error goto Er

Application.Echo=False

Docmd.Hourglass true

#end if

...



Ex:

On error Resume next ' den folgenden Code ohne Fehlerbehandlung ausführen

Close x ' Objekte schließen usw.

Application.Echo=True

Docmd.Hourglass False

exit sub



Er:

Call Fehlerbehandler

Resume Ex

End sub







Gruß aus dem Norden
Reinhard


Bitte immer die Access-Version angeben!
DB-Wiki


Wie man Fragen richtig stellt

YaccessAccess-FAQUnd ansonsten: Wikipedia




geschrieben von

Login

E-Mail:
  

Passwort:
  

Beitrag anfügen

Symbol:
 
 
 
 
 
 
 
 
 
 
 
 
 

Überschrift: