Posts tagged: ErrorHandler

Grundlagen des Fehlermanagements

By , 17. Juli 2009

Fehlermanagement im VBA-Code ist keine lästige Pflichtübung für den Entwickler, sondern essentiell wichtig für eine funktionierende Access-Anwendung und liefert wichtige Informationen zur Korrektur und Optimierung von VBA-Code.

Softwarefehler
Befassen wir uns erst mal mit dem Begriff des Fehlers. Wie üblich gibts in Deutschland auch dafür eine allgemeine Norm: Nach DIN EN ISO 8402 ist ein Fehler gleichzusetzen mit der Nichterfüllung einer festgelegten Forderung. Man könnte einen Fehler auch als eine Nicht-Konformität bezeichnen.

Und da fängt es an spannend zu werden. Forderungen können z.B. vom Kunden in Form von Lastenheften existieren. Das wäre auch der Idealfall, da dann die Forderungen exakt umrissen sind und der Entwickler zielgerichtet diese erfüllen kann. Was aber wenn kein Lastenheft existiert? Das ist ein Dilemma in das sich dann jeder Entwickler begibt. Er bekommt dann meist scheibchenweise die benötigten Informationen, mal als Email oder per Post und im schlechtesten Fall mündlich per Telefon oder in einem Gespräch mitgeteilt. Da heißt es dann nur: „wer schreibt der bleibt“, also mitprotokollieren und am besten vom Gesprächspartner gegenzeichnen lassen.

Auftretende Fehler bei der VBA Programmierung lassen sich grob in 5 Kategorien einteilen:

  • Fehlerhafter VBA-Code, z.b. ein Überlauf durch falschen Variablentyp
  • Fehlerhafte Interaktion des Benutzers, z.B. fehlende oder fehlerhafte Eingabe
  • Fehler durch Wechselwirkung mit der Hardware, z.B. defekte Speicherbausteine
  • Fehler durch Wechselwirkung mit Software, z.B. Virenscanner, Firewall etc.
  • Und zuletzt noch Fehler durch Versionsänderung benuzter Komponenten, z.B. ActiveX Komponenten

Read more »

Globale Fehlerbehandlung realisieren

By , 16. Oktober 2008

Die bisherige Vorgehensweise eine Fehlerbehandlung zu realisieren war, einen Error Handler in einer Prozedur einzufügen und dann entweder per MsgBox eine Meldung ausgeben oder eine Funktion aufrufen die den Fehler entsprechend behandelt. Das könnte z.B. so aussehen:

Sub MeineProzedur()
    On Error goto Fehlerbehandlung
    'Programmcode...

Exit_Here:
    Exit sub

Fehlerbehandlung:
    Msgbox Err.description
    Resume Exit_Here
End sub

Der Entwickler wünscht sich natürlich, dass diese Routine automatisch und an zentraler Stelle implementiert wäre, und er nicht in jede Prozedur eine Fehlerbehandlung einbauen müsste. Das war bislang leider nicht möglich – jetzt bietet die Firma iTech Masters (www.everyaccess.com) eine entsprechende Software an, die ich hier vorstelle. Das Produkt steht nach der Installation als AddIn in der VBA IDE zur Verfügung. Das AddIn Menü sieht wie folgt aus:

AddIn Menü
Read more »

OfficeFolders theme by Themocracy