Tools für den VBA-Editor

Tools für den VBA-Editor machen das Leben leichter. Unter diesem Motto steht der folgende Artikel. Lassen Sie sich von vielen kleinen Helfern die Arbeit etwas vereinfachen und konzentrieren Sie sich dafür auf das Wesentliche, auf die Funktion Ihres VBA-Codes. In diesem Artikel werden sieben Tools vorgestellt, die Sie bei Ihrer Arbeit im VBA-Editor unterstützen. Und das Beste ist: All diese Tools sind kostenlos erhältlich.

Bei Tools für den VBA-Editor denkt der geneigte Leser sofort an die MZ-Tools. Was diese mächtige Toolsammlung alles zu bieten hat, können Sie im Beitrag Programmierhelfer lesen (Shortlink 450).

Auch eine Erweiterung, um die Navigation im VBA-Editor zu verbessern, wurde mit dem ProcBrowser von Sascha Trowitzsch bereits vorgestellt (Prozedurbrowser für den VBA-Editor, Shortlink 238).

Aber es gibt noch mehr Tools, die Funktionen bereitstellen, um die Arbeit im VBA-Editor zu erleichtern. Nachfolgend stellen wir Tools zu folgenden Themen vor:

  • Scrollen im VBA-Editor
  • Verweise-Dialog verbessern
  • Navigation zwischen Codeteilen erleichtern
  • ToDos im VBA-Code finden
  • Module auf Registerseiten organisieren
  • Einrückungen im VBA-Code
  • Fehler im VBA-Code finden

Die nachfolgenden Tools erfüllen jeweils genau einen Zweck. Ob Sie diese Werkzeuge nutzen möchten, hängt von Ihren Erfahrungen, Ihrem persönlichen Stil und Ihren Vorlieben ab. Am besten schauen Sie sich die Tools einfach an und suchen sich dann diejenigen heraus, die zu Ihnen und Ihrer Arbeitsweise passen.

Scrollen im VBA-Editor

Irgendwann ist die Möglichkeit, im VBA-Editor mit dem Mausrad zu scrollen, verloren gegangen. Eine Funktion, die Sie in Word und anderen Office-Programmen wie selbstverständlich nutzen, ist im VBA-Editor nicht verfügbar. Diesen Missstand können Sie beseitigen. Laden Sie dazu das Tool VBScroll von Shahin Gasanov herunter. Den Download finden Sie unter [1]. Direkt nach der Installation finden Sie im System-Tray ein weißes Maus-Icon. Ein Doppelklick darauf öffnet den Optionen-Dialog (siehe Bild 1).

Abb1.tif

Bild 1: Lassen Sie VBScroll automatisch starten

Im Bereich Startup stellen Sie ein, wann VBScroll gestartet wird. Am besten wählen Sie dort den Eintrag Current user aus. VBScroll wird jetzt immer gestartet, wenn Sie sich an diesem Rechner anmelden. Probieren Sie die neu gewonnene Funktion gleich einmal aus. Wechseln Sie in den VBA-Editor, öffnen Sie ein beliebiges Modul und scrollen Sie mit dem Mausrad. Bald werden Sie diese Möglichkeit nicht mehr missen wollen.

Unter Windows Vista scheint VBScroll Probleme zu haben. Wenn Sie mit Windows Vista arbeiten, können Sie stattdessen eine der Alternativen wie etwa FreeWheel [2], Wheeler [3] oder VB6 Mouse Wheel [4] verwenden. Ab Access 2007 können Sie auf den Einsatz eines Zusatztools für das Scrollen im VBA-Editor verzichten. In dieser Version hat Microsoft die fehlende Mausradunterstützung endlich nachgerüstet.

Verweise-Dialog verbessern

Sie können die Möglichkeiten von VBA durch das Einbinden von Verweisen auf externe Bibliotheken erweitern. Dazu verwenden Sie den Verweise-Dialog (Menüeintrag Extras|Verweise). Der Verweise-Dialog zeigt Ihnen unter anderem auch den vollständigen Pfad zur gerade ausgewählten Bibliothek an. Leider ist das Feld zur Anzeige des Pfades etwas klein geraten. Wenn eine Bibliothek tief im Dateisystem verschachtelt gespeichert ist, reicht der Platz nicht aus, um den vollständigen Pfad anzuzeigen (siehe Bild 2).

Abb2.tif

Bild 2: Pfadangaben im Verweise-Dialog ohne …

Um an den vollständigen Pfad zur Bibliothek zu gelangen, könnten Sie im Direktfenster etwa folgende Zeile verwenden:

 Application.References("DAO").FullPath

Der Nachteil bei diesem Vorgehen ist, dass Sie erstens diese Zeile in das Direktfenster eingeben und zweitens auch noch den internen Namen der Bibliothek kennen müssen. Dieser interne Name muss nicht mit dem im Verweise-Dialog angezeigten Namen übereinstimmen.

Alternativ können Sie zur Lösung dieses Problems die VBE Tools v2.0 von Office Automation Ltd verwenden. Den Download finden Sie unter [5].

Aktivieren Sie in den Optionen den Punkt Resize €Location€ label on Tools > References dialog. Ab sofort teilt der Verweise-Dialog die Pfadangaben auf zwei Zeilen auf. Dieser Platz reicht aus, um auch lange Pfade darzustellen (siehe Bild 3).

Abb3.tif

Bild 3: … und mit den VBE-Tools

Navigation im Code erleichtern

Sicherlich haben Sie auch schon mal die Situation gehabt, dass Sie gleichzeitig mehrere Stellen in Ihrem VBA-Code anschauen oder bearbeiten mussten. Die manuelle Navigation zwischen den verschiedenen Codezeilen in einem oder mehreren Modulen kann schnell lästig werden.

Eine erste Hilfe können die Lesezeichen aus der Symbolleiste Bearbeiten sein. Sie aktivieren die Symbolleiste, indem Sie aus dem Menü Ansicht|Symbolleisten den Punkt Bearbeiten auswählen.

Immer wenn Sie sich in einer Codezeile befinden, zu der Sie später zurückkehren möchten, klicken Sie auf das Symbol mit dem blauen Fähnchen (siehe Bild 4).

Abb4.tif

Bild 4: Lesezeichen in den VBA-Code einfügen

Wenn Sie jetzt zu einer vorher markierten Stelle zurückkehren wollen, wählen Sie aus der Symbolleiste Nächstes Lesezeichen oder Vorheriges Lesezeichen. Der VBA-Editor springt zu der entsprechenden Stelle im VBA-Code.

An dieser Stelle werden schnell die Grenzen dieser Funktion deutlich. Sie können immer nur zum nächsten oder vorherigen Lesezeichen wechseln, ohne genau zu wissen, welches dieses ist. Um dieses Problem zu umgehen, sollten Sie die VBE Bookmarks von Jim Rech nutzen. Den Download finden Sie unter [6].

Das Add-In fügt eine eigene Symbolleiste ein. Diese beinhaltet fünf Schaltflächen mit der Aufschrift 1 bis 5. Diese Schaltflächen haben anfangs den Tooltipp Unused. Zusätzlich ist noch eine weitere Schaltfläche mit der Aufschrift R vorhanden. Diese dient später zum Löschen aller gespeicherten Bookmarks.

Immer, wenn Sie sich in einer Codezeile befinden, zu der Sie später zurückkehren möchten, klicken Sie auf eine der ungenutzten Schaltflächen (siehe Bild 5). Die Schaltfläche wird jetzt “gedrückt” dargestellt und der Tooltipp enthält den Namen des VBA-Projekts, den Namen des Moduls und die Zeile. Durch einen Klick auf diese Schaltfläche gelangen Sie später wieder an diese Stelle im VBA-Code zurück.

Abb5.tif

Bild 5: Die Symbolleiste der VBE Bookmarks

Beachten Sie die Grenzen dieses Tools: Wenn Sie ein Modul, auf das sich ein Bookmark bezieht, umbenennen, wird der Bookmark nicht mehr funktionieren. Die Bookmarks beziehen sich immer auf eine Zeile im VBA-Code, nie auf deren Inhalt. Wenn Sie also vor einer gemerkten Zeile weitere Zeilen einfügen oder löschen, wird ein Bookmark nicht mehr auf die richtige Zeile verweisen.

ToDos im VBA-Code finden

Geht es Ihnen auch so, dass Ihnen oft erst beim Schreiben des VBA-Codes einfällt, an was Sie noch denken müssen Welche Features Sie noch implementieren wollen Welche Codezeilen Sie sich nochmals genau in Ruhe anschauen wollen

Wie gehen Sie dann mit diesen Informationen um Viele Programmierer versuchen einfach, sich diese Dinge zu merken. Andere machen sich Notizen auf irgendwelchen Zetteln, die gerade greifbar sind. Vielleicht landet die Notiz auch auf einem Post-it, das dann am Monitor klebt. Wer das Thema professioneller angeht, pflegt vielleicht eine Liste in Word oder Excel, in der alle offenen Punkte aufgelistet werden.

Einen Nachteil haben alle diese Vorgehensweisen. Sie sind zeitaufwendig und fehleranfällig. Es besteht immer die Gefahr, dass diese Notizen verloren gehen. Vielleicht fragt sich mancher auch, auf welche Stelle im Code sich die jeweilige Notiz überhaupt genau bezog.

Eine Alternative zu diesen Vorgehensweisen gibt es zum Beispiel in Visual Studio. Dort können Sie Ihre ToDos direkt als Kommentar in den Code schreiben. So wird zum einen sichergestellt, dass die ToDos nicht verloren gehen und zum anderen ist durch das Einfügen in den Quellcode der Bezug zwischen dem ToDo und dem Code fixiert.

In einem gesonderten Fenster listet der Visual Studio Editor alle offenen ToDos auf.

Diese Möglichkeit gibt es mit dem TM VBA-ToDoFinder auch für den VBA-Editor. Laden Sie das Add-In von [7] herunter.

Künftig fügen Sie ein ToDo einfach als Kommentar in Ihren VBA-Code ein. Beginnen Sie den Kommentar mit dem Text ToDo: Den folgenden Text können Sie dann mit dem TM VBA-ToDoFinder anzeigen lassen. Wählen Sie dazu aus dem Menü Add-Ins den entsprechenden Menüpunkt.

Es öffnet sich das Fenster des TM VBA-ToDoFinders. Durch einen Klick auf die Schaltfläche Refresh wird die Liste mit den ToDos aktualisiert. Hier finden Sie neben dem Namen des Moduls und der Prozedur den Kommentar des jeweiligen ToDos. Durch einen Klick auf die Spaltenköpfe können Sie die Einträge entsprechend auf- oder absteigend sortieren lassen. So finden Sie auch in größeren Anwendungen schnell das gewünschte ToDo. Mit einen Doppelklick auf ein ToDo wechseln Sie direkt zur entsprechenden Stelle im VBA-Code, sodass Sie dort sofort mit dem Codieren beginnen können.

Bei Bedarf können Sie sich die Liste der gefundenen ToDos auch als Textdatei exportieren lassen. Das Suchwort für die ToDos können Sie über den Optionen-Dialog Ihren Wünschen anpassen.

Module auf Registerseiten organisieren

Jeder, der schon mal länger im VBA-Editor gearbeitet hat, kennt das folgende Phänomen. Nach und nach werden viele Module geöffnet. Am Ende geht schnell die Übersicht verloren, welche Module gerade offen sind. Auch ein Wechsel von einem Modul in das andere ist nicht unbedingt intuitiv zu bewerkstelligen.

Ende des frei verfügbaren Teil. Wenn Du mehr lesen möchtest, hole Dir ...

den kompletten Artikel im PDF-Format mit Beispieldatenbank

diesen und alle anderen Artikel mit dem Jahresabo

Schreibe einen Kommentar