Debug von eigenen Makros / Vorlagen

Zurück

Bei der Erstellung eigener Makros oder der Bearbeitung Bestehender können hin und wieder Fehler auftreten. Um jene zu beheben, müssen die Fehlerquellen im Quelltext des jeweiligen Schreiben ausfindig und analysiert werden. Im Folgenden wird eine Vorgehensweise beschrieben, die bei der selbstständigen Behebung von Fehlern in den meisten Fällen sich als nützlich erweist. Wenn beispielsweise während der Schreibenerstellung eine Fehlermeldung auftaucht, besteht die Möglichkeit zu debuggen. Ein anderer Fall wäre, dass das Makro zwar keine Fehlermeldungen verursacht, jedoch nicht den gewünschten Zweck erfüllt (in diesem Fall kann ähnlich verfahren werden).
 
Vorgehensweise
 
1. Das Schreiben über das SBA-Modul öffnen (dabei SHIFT gedrückt lassen, wodurch das Makro nicht ausgeführt wird)
2. sba_lib.dot öffnen (ebenfalls SHIFT gedrückt lassen)
3. Die StartMakro-Prozedur (ALT+F8) starten.
 

Bei den meisten Fehlern werden Dialogfenster dieser Art geöffnet. Diese enthalten den Button Debuggen, der automatisch zur Fehlerquelle leitet.

 
Breakpoints setzen und Makro schrittweise durchgehen
 
Die Stelle, an dem der erste Fehler auftritt, ist eventuell nicht aufschlussreich, sodass Schritte in den bisherigen Programmverlauf nötig sind. Im Word integrierten VB-Script Editor (Aufruf ALT+F11 oder während der Ausführung eines Makros STRG+ALT+Pause) kann durch Betätigen der Taste F9 an einer bestimmten Position ein Haltepunkt erzeugt werden. Wird dieser an den Anfang des Makros gesetzt, so kann das Makro ab dem gesetzten Breakpoint in Einzelschritten (F8) durchgangen werden. Dies ist die wahrscheinlich gründlichste Methode um die Ursache eines Fehlers ausfindig zu machen, jedoch beansprucht sie (je nach Größe des Makros) viel Zeit. Der genaue Verlauf des Programms kann hiermit mitverfolgt werden. Währenddessen können u.a. Variablen (per Tooltip) gelesen oder andere logische Fehler aufgedeckt werden. Eine andere Methode wäre das Setzen weiterer Breakpoints an geeigneten Stellen, falls bereits ein Verdacht auf die mögliche Ursache besteht.
 

Die dunkelroten Markierungen sind Breakpoints, die gelbe Markierung die aktuelle Position des Programmverlaufs.
Zurück