Warum noch ein Access-Buch?
Für wen ist das Buch?
Jetzt bestellen
+ direkter Download des eBooks!
Nur EUR 59,95!
Fehler gefunden?
Bitte melden!
Wünsche an das Buch?
Her damit!
Was denken die Leser über dieses Buch?
Lesen Sie aktuelle Rezensionen!
Kapitel des noch nicht veröffentlichten Buchs zum Downloaden, Probelesen und Kommentieren
Beispieldatenbanken
Zusätzliches Material

Das Buch im HTML-Format

Für unbestimmte Zeit bieten Addison-Wesley und André Minhorst den kompletten Inhalt des Buchs als Download an. Schauen Sie rein und informieren Sie sich über den Inhalt! Und wenn Ihnen das Buch nützlich erscheint und Sie glauben, dass Sie etwas gelernt haben oder durch das Gelesene sogar etwas Zeit und somit Geld bei Ihrer Arbeit einsparen konnten, können Sie sich ja beim Autor und beim Verlag revanchieren - beispielsweise durch den Kauf dieses Buchs.

Am schönsten wäre es natürlich, wenn Sie das Buch direkt hier bestellen - Sie erhalten das Buch dann direkt vom Verlag, und der Autor und Verlag haben dann noch mehr davon, als wenn Sie es anderswo kaufen.

Danke für Ihr Interesse!

13.2.6 Das Lokal-Fenster

13.3 Fehlerbehandlung in VBA

Wenn man von Fehlerbehandlung spricht, bezieht sich dies auf Laufzeitfehler. Andere Fehler wie Syntax- oder Kompilierzeitfehler werden bereits vor dem Start einer Routine gemeldet - hier gibt es auch keine Möglichkeit einer externen Behandlung.

Laufzeitfehler lassen sich unter VBA wie in anderen Programmiersprachen »behandeln«; das heißt, dass Sie mit zusätzlichem VBA-Code auf Fehler reagieren können.

Fehlerbehandlung für benutzerdefinierte Fehlermeldungen

Meist verwendet man eine Fehlerbehandlung dazu, eine benutzerdefinierte Fehlermeldung anzuzeigen, anstatt dem Benutzer der Anwendung die tatsächliche Fehlermeldung mit Blick auf die fehlerhafte Stelle im Code zu präsentieren. Auf diese Weise lassen sich in vielen Fällen aussagekräftigere Meldungen ausgeben. Wenn Sie die Access-Anwendung als Runtime-Version weitergeben (mehr dazu in Kapitel 19, Abschnitt 19.2, »Weitergabe von Access-Datenbanken«), gehört eine solche Fehlerbehandlung quasi zum Pflichtprogramm - erweitert um eine Möglichkeit, Informationen zu den Fehlern in irgendeiner Weise zur Weiterleitung an den Entwickler verfügbar zu machen.

Wie das funktioniert, erfahren Sie weiter unten in Abschnitt 13.4, »Fehlerdokumentation und -übermittlung«.

Fehlerbehandlung als Vereinfachung

Oft ist es gar nicht geplant, den Benutzer vom Auftreten eines Fehlers in Kenntnis zu setzen - wenn Sie beispielsweise eine Routine verwenden, um eine temporäre Tabelle anzulegen, löschen Sie zuvor eine eventuell vorhandene Tabelle gleichen Namens. Wenn Sie nicht sicher wissen, ob die Tabelle überhaupt vorhanden ist, und keinen Code schreiben wollen, der dies überprüft, sorgen Sie einfach dafür, dass die Tabelle gelöscht wird, wenn diese vorhanden ist, und dass der zu erwartende Fehler, der beim Versuch, eine nicht vorhandene Tabelle zu löschen, auftritt, nicht angezeigt wird - ein Beispiel folgt weiter unten.

Fehlerbehandlung als Lieferant für Bedingungs-Kriterien

Manchmal verwendet man Fehler sogar als eine Art »Verzweigung« - wenn Sie etwa eine Referenz auf ein Word-Objekt benötigen, versuchen Sie zunächst, eine bestehende Instanz anzusprechen.

Ist diese nicht vorhanden, löst dieser Versuch einen Fehler aus. Direkt danach werten Sie aus, ob ein Fehler auftrat und erzeugen in Abhängigkeit davon eine neue Instanz von Word oder verwenden die existierende Instanz.

Nächster Abschnitt:

13.3.1 Elemente der Fehlerbehandlung

Unterabschnitte des aktuellen Abschnitts:

    13.3.1 Elemente der Fehlerbehandlung

    13.3.2 Fehlerbehandlung einleiten

    13.3.3 Klassischer Aufbau einer Fehlerbehandlung

    13.3.4 Fehler auswerten

    13.3.5 Das Err-Objekt

    13.3.6 Nach der Fehlerbehandlung

    13.3.7 Fehlernummern und -beschreibungen

    13.3.8 Benutzerdefinierte Fehlerbehandlung temporär ausschalten

    13.3.9 Funktionale Fehlerbehandlung

    13.3.10 Benutzerdefinierte Fehler

    13.3.11 Fehler bei API-Aufrufen

© 2006-2008 André Minhorst Alle Rechte vorbehalten.