Autor: Peter Haserodt  --- Aus Excel VBA - Gruppe: Tutorials

Fehlerbehandlung (6) - Zum Abschluss der Zeigefinger!

Autor: Peter Haserodt - Erstellt: --      - Letzte Revision: --Gruppenthema: 7 Folgen 1 2 3 4 5 6 7 Sie sind in Folge:7
Wichtiger Hinweis:
Dies ist ein Teil des Fehlerbehandlungs Tutorials.
Starten Sie unbedingt mit dem Anfang, also mit : Fehlerbehandlung (0) - Einführung

Zum Abschluss der Zeigefinger!

Ich hoffe, dass ich Ihnen die Fehlerbehandlung ansatzweise näher bringen konnte.
Aber ich möchte doch nochmals auf die wichtigsten Dinge eingehen:

Hinterlassen Sie dem Anwender immer das System so, wie Sie es vorgefunden haben.
Bemühen Sie sich, temporäre Änderungen so schnell wie möglich (und sinnvoll) wieder zurückzusetzen.
Es ist oft viel sinnvoller, etwas an verschiedenen Stellen im Code ein-auszuschalten, als dies für das gesammte Projekt zu tun.
Sorgen Sie unbedingt dafür, dass alle Veränderungen in einem Bereich ablaufen, den Sie vollkommen unter der Fehlerkontrolle haben! Alles andere ist fahrlässig.

Nehmen Sie nicht etwas als Standard an!!!

Ein Beispielcode, den ich immer wieder sehe, ist z.B.
Application.Calculation = xlCalculationManual
... Code
Application.Calculation = xlCalculationAutomatic

Dies dann zwar schon oft in einer Fehlerbehandlung eingeschlossen aber was soll dies?
Wer zum Henker hat denn gesagt, dass vorher die Calculation auf automatisch stand?
Merken Sie sich den Zustand, bevor Sie etwas verändern und dann zurücksetzen.

Public Sub Beispiel()
Dim iOldCalc As Long
On Error GoTo Fehler
iOldCalc = Application.Calculation
Application.Calculation = xlCalculationManual
'Code
Aufraeumen:
Application.Calculation = iOldCalc
Exit Sub
Fehler:
MsgBox Err.Description ' Achtung faule Variante
Resume Aufraeumen
End Sub
Ganz schlimm sind Dinge, die eine Grundeinstellung der Anwendung verändern.
z.B. Application.DisplayAlerts.

Wer diese auf False setzt, muss dafür Sorge tragen, dass diese wieder True werden.
(Hier brauche ich es mir nicht zu merken, da es keine Option ist sondern eine temporäre Ausschaltung der Warnmeldung)

Also: Fehlerbehandlung nicht nur blauäugig was man glaubt, was mal war wieder einschalten, auch unbedingt Anwendungsreaktionen wieder auf den "normalen" Zustand zurückschalten.
Peter Haserodt
  • Formelhilfe
  • Makroentwicklung
  • VBA-Programmierung
  • + + + + + + + + +
Fehlerbehandlung ist ein Rettungsanker

Fehlerbehandlung ist nicht dafür da, dass Unabwägbarkeiten einfach an den Anwender zurückgegeben werden.
Prüfen Sie so viel wie möglich vorher in Ihrem Code, um auf Dinge vernünftig zu reagieren, ohne den Anwender mit einem Programmabbruch zu erschrecken.



Weitere Artikel der Gruppe: Tutorials Aus Excel VBA
Nach oben
ToDo
Google Werbung