VBA lernen - Excel 2007/2010 (3)

Von: Dieter Frommhold
Stand: 16. Januar 2011
Beitrag bewerten
Anmelden um Kommentare zu schreiben

Schrittweise testen

Ein Debugger ist ein Werkzeug, das dazu dient, Fehler in Programmen zu finden und zu beheben. Bei der Fehlerbeseitigung, dem Debuggen, verfolgen Sie den Ablauf Ihres Programms Anweisung für Anweisung und überprüfen dabei die Inhalte der Variablen.

Das Übungsbeispiel

Damit Sie die Beispiele dieses Kurses nachvollziehen können, starten Sie dazu bitte Excel 2007 und öffnen Sie die Übungsdatei "Testbeispiele.xlsm". Die einzelnen Kapitel beziehen sich auf die geöffnete Arbeitsmappe.

Übungsdatei

Die Übungsdatei Testbeispiele.xlsm können Sie hier herunterladen (Excel-2007-Arbeitsmappe mit aktivierten Makros, 22 KB).

Erscheint unmittelbar nach dem Öffnen der Arbeitsmappe 54021_Testbeispiele. xlsm über der Bearbeitungsleiste der Hinweis "Makros wurden deaktiviert", klicken Sie bitte auf die Fläche "Optionen...", und aktivieren Sie bitte in der angezeigten Sicherheitswarnung die Makros durch Klick auf das Optionsfeld "Diesen Inhalt aktivieren". Sie können Ihre Makros nur testen, wenn sie aktiv sind.

Makros aktivieren

Das Testbeispiel finden Sie auf dem Tabellenblatt Tabelle1.

Bild vergrößernDie Beispieltabelle

Das Problem kennen Sie bestimmt: Sie möchten das preisgünstigste Produkt aus einer Palette von Angeboten mit verschiedenen Mengen kaufen. Aufgrund der unübersichtlichen Mengenangebote fällt es schwer, den günstigsten Preis zu finden. In der vorliegenden Tabelle bieten diverse Produzenten Kartoffeln der Sorte Afra in unterschiedlichen Abpackungen und Preisen an. Eine Prozedur auswertung ermittelt den günstigsten, eine zweite Prozedur auswertung2 den ungünstigsten Preis.

Die Symbolleiste 'Debuggen' einblenden

Wechseln Sie in den VBA-Editor ("Entwicklertools" - Gruppe "Code" - "VBA" oder mit <Alt> + <F11>).

Über "Ansicht" - "Symbolleisten" - "Debuggen" blenden Sie die Symbolleiste Debuggen ein.

Über "Ansicht" - "Symbolleisten" - "Anpassen" können Sie sich zusätzliche Symbole, z.B. das Symbol "Ausführen bis Cursorposition" hinzufügen. Das erlaubt Ihnen, Ihre Bedienmöglichkeiten zum Test noch zu erweitern.

Bild vergrößernZusätzliches Symbol in Symbolleiste übernehmen

Bild vergrößernDie Symbolleiste Debuggen mit hinzugefügten Symbolen

Der Testlauf

Klicken Sie im VBA-Editor im Modul1 auf eine beliebige Stelle der Prozedur auswertung. Um die Prozedur schrittweise zu testen, wählen Sie entweder "Debuggen" - "Einzelschritt", drücken <F8> oder klicken auf der Symbolleiste Debuggen auf das Symbol Einzelschritt.

schrittweise testen

Auf Befehl (z.B. <F8>) interpretiert der VBA-Interpreter die aktuelle (gelb markierte) Anweisung und arbeitet sie ab.

Es wird immer der Programmschritt gelb markiert, der als nächster abgearbeitet wird, d. h. sein Ergebnis liegt erst nach dem Einzelschritt-Befehl vor!

Bei Bedarf können Sie den gelben Pfeil vor der aktuellen Anweisung mit dem Mauszeiger zu einer anderen Anweisung ziehen und somit die nächste Startposition des Testablaufs bestimmen. Für die logischen Konsequenzen sind Sie aber selbst verantwortlich!

Mit "Ausführen" - "Zurücksetzen" wird der Einzelschrittmodus beendet, mit "Ausführen" - "Fortsetzen" bzw. <F5> wird die Prozedur bis zum Ende ohne Halt abgearbeitet.

Mit "Ausführen" - "Sub/UserForm ausführen" bzw. <F5> wird eine Prozedur vollständig ohne Halt abgearbeitet.

Ein laufendes Programm können Sie mit <Strg>+<Pause> bzw. <Break> unterbrechen.

Quickinfo anzeigen

Wenn die Ausführung des VBA-Codes einer Prozedur anhält, z.B. beim schrittweisen Testen, wird Ihnen, sobald Sie den Mauszeiger darüber bewegen, der aktuelle Inhalt einer Variablen in einer QuickInfo angezeigt.

Anzeige des aktuellen Variableninhaltes

Dies ist eine Leseprobe

Möchten Sie den Beitrag komplett lesen? Dann werden Sie Probemitglied und testen Sie akademie.de 14 Tage kostenlos!

Auf VBA Excel 2007/2010 (3): Testhilfsmittel erfahren Sie mehr über diesen Beitrag und die weiteren Leseproben.

Weitere Informationen finden Sie auf unserer Infoseite zur Mitgliedschaft und in unseren AGB.

Ich bin bereits Mitglied
Jetzt Probemitglied werden
Ich kann in den 14 Tagen Probezeit formlos z.B. per E-Mail stornieren. Wenn ich das nicht tue, entscheide ich mich für ein