Fehler unter VBA

Wer mit VBA arbeitet und damit seine Access-Anwendung automatisieren möchte, macht Fehler – gerade als Einsteiger. Da ist es gut zu wissen, welche Fehler passieren können und wie diese einzuordnen sind. Dieser Artikel stellt die verschiedenen Fehlerarten vor, denen Sie im Laufe Ihres Entwicklerlebens begegnen werden.

Fehlerarten unter VBA

Unter VBA gibt es verschiedene Fehler, die sich zu unterschiedlichen Anlässen bemerkbar machen:

  • Syntaxfehler
  • Kompilierzeitfehler
  • Laufzeitfehler

Die folgenden Abschnitte stellen die Fehlerarten vor.

Syntaxfehler

Syntaxfehler sind die am einfachsten zu behandelnden Fehler: Sie entstehen gleich bei der Eingabe und werden entweder direkt beim Verlassen der Codezeile oder spätestens beim Ausführen gemeldet.

Ein Beispiel ist eine fehlende schließende Klammer wie in Bild 1. Der Fehler fällt dem VBA-Interpreter gleich auf, wenn Sie die Zeile verlassen. In diesem Falle wird das Then-Schlüsselwort markiert, weil es das erste ungültige ist, dem eigentlich die schließende Klammer hätte vorangehen müssen.

Syntaxfehler durch eine fehlende Klammer

Bild 1: Syntaxfehler durch eine fehlende Klammer

Syntaxfehler beheben

Nach dem Bestätigen der Fehlermeldungen mit OK hinterlegt der VBA-Editor die Kopfzeile der Routine übrigens gelb und will Ihnen damit sagen: Korrigieren Sie den Fehler und betätigen Sie die Taste F5, damit wir einen neuen Versuch unternehmen können.

Das können Sie tun, wenn es sich nur um eine kleine Ergänzung wie etwa das Hinzufügen einer schließenden Klammer oder einer End If-Zeile handelt – wenn Sie die Routine etwa als Ereignisprozedur über das Anklicken einer Schaltfläche eines Formulars gestartet haben, brauchen Sie nicht erneut auf die Schaltfläche zu klicken, sondern können direkt mit F5 fortfahren.

Anzeige von Syntaxfehlern ausschalten

Irgendwann kennen Sie die typischen Syntaxfehler und möchten vielleicht auf die Anzeiger der Fehlermeldungen verzichten. Für diesen Fall hält der Optionen-Dialog des VBA-Editors eine passende Einstellung bereit.

öffnen Sie den Optionen-Dialog mit dem Menü-Eintrag Extras|Optionen und deaktivieren Sie die Einstellung Automatische Syntaxüberprüfung (siehe Bild 2).

Deaktivieren der Anzeige von Syntaxfehlern

Bild 2: Deaktivieren der Anzeige von Syntaxfehlern

Wenn Sie nun einen Syntaxfehler produzieren, der bereits durch die Prüfung einer einzigen Zeile ermittelt werden kann, zeigt der VBA-Editor keine Fehlermeldung an, sondern markiert einfach nur die fehlerhafte Zeile rot.

Dabei kann es durchaus vorkommen, dass mehrere fehlerhafte Zeilen gleichzeitig markiert werden (siehe Bild 3). Für Einsteiger mag das nicht relevant sein, aber später werden Sie es möglicherweise zu schätzen wissen, wenn Sie etwa beim Importieren und Umwandeln von Code in anderen Programmiersprachen nicht ständig Fehlermeldungen wegklicken müssen, um den Code in Ruhe VBA-konform zu gestalten.

Ohne automatische Syntaxüberprüfung können auch mehrere fehlerhafte Zeilen farbig hinterlegt werden.

Bild 3: Ohne automatische Syntaxüberprüfung können auch mehrere fehlerhafte Zeilen farbig hinterlegt werden.

Und wenn wir gerade schon bei den Optionen zur Anzeige von Syntaxfehlern sind: Auf der zweiten Seite der Optionen können Sie unter Code-Farben einstellen, in welcher Farbe verschieden markierte Zeilen und Texte erscheinen sollen.

Wenn Sie also beispielsweise in der Schule zuviele rote Kommentare in Ihren Klassenarbeiten vorgefunden haben, möchten Sie fehlerhafte Zeilen vielleicht eher grün gefärbt vorfinden (siehe Bild 4).

Einstellen der Textfarbe etwa für Zeilen mit Syntaxfehlern

Bild 4: Einstellen der Textfarbe etwa für Zeilen mit Syntaxfehlern

Kompilierzeitfehler

Möchten Sie weiterlesen? Dann lösen Sie Ihr Ticket!
Hier geht es zur Bestellung des Jahresabonnements des Magazins Access [basics]:
Zur Bestellung ...
Danach greifen Sie sofort auf alle rund 400 Artikel unseres Angebots zu - auch auf diesen hier!
Oder haben Sie bereits Zugangsdaten? Dann loggen Sie sich gleich hier ein:

Schreibe einen Kommentar