VBA: So debuggen Sie Code

Beim Schreiben und Ausführen von VBA-Code ist es wichtig, dass der Benutzer das Debuggen von Codefehlern lernt. Dies ist die Erwartung des Excel Excel-Crashkurses. Unser Excel-Crashkurs richtet sich an Finanzanalysten, die sich auf die Wall Street vorbereiten möchten. Lernen Sie Excel-Verknüpfungen, Formeln, Funktionen, Formatierungen und Benutzer kennen, damit der Code wie erwartet funktioniert. Es gibt jedoch Fälle, in denen Benutzer auf Fehler und Bugs im Code stoßen, die die Integrität beeinträchtigen können. In den meisten Fällen treten beim Code Probleme auf, und der Benutzer muss die Fehler zuerst debuggen, bevor er weitere Codezeilen schreiben kann.

So debuggen Sie Code in VBA

Während einige der Fehler hervorgehoben und Warnungen angezeigt werden, gibt es Fehler und Bugs, bei denen Benutzer ihren Code erneut untersuchen müssen, um gefundene Fehler zu löschen und Fehler zu beheben, die sich auf die reibungslose Ausführung des Codes auswirken.

Kurze Zusammenfassung

  • Beim VBA-Debugging werden Fehler, Fehler und andere unbeabsichtigte Funktionen im VBA-Code gefunden und behoben.
  • VBA verfügt über verschiedene integrierte Debugging-Tools, mit denen Fehler und Bugs gefunden werden können, sodass der Code nicht mehr neu kompiliert werden muss.
  • Einige der im VBA-Editor verfügbaren Debugging-Tools umfassen das Übersteigen, Aussteigen, Haltepunkte und das Debuggen von Drucken.

Überprüfen Sie Ihren Code

Wenn Sie den VBA-Code auf Fehler untersuchen, besteht die einfachste Debugging-Technik darin, den Code zu überprüfen. Sie müssen den Code erneut betrachten, um vorhandene Fehler oder andere unbeabsichtigte Funktionen zu überprüfen. Das Auffinden von Fehlern mithilfe der Überprüfungsmethode erfordert Kenntnisse des VBA-Codes und die Erfahrung, um solche Fehler zu erkennen. Es kann helfen, Fehler zu identifizieren, ist jedoch nicht so effizient wie die integrierten Debugging-Tools.

Der VBA-Editor verfügt über einen integrierten Debugging-Mechanismus, mit dem Excel-Benutzer interagieren und den Code ausführen können. Wenn der Benutzer den VBA-Editor (durch Drücken von Alt + F11) in Excel startet, wird das Editorfenster geöffnet, und im oberen Menü befindet sich eine Debug-Option, wie in der folgenden Abbildung dargestellt:

VBA-Editor

Wenn der Benutzer auf das Debug-Menü klickt, wird eine Dropdown-Liste mit einer Liste von Befehlen angezeigt, mit denen der VBA-Code debuggt werden kann. Die Befehle werden mit Tastenkombinationen geliefert. Excel-Tastenkombinationen PC Mac Excel-Tastenkombinationen - Liste der wichtigsten und gebräuchlichsten MS Excel-Tastenkombinationen für PC- und Mac-Benutzer, Finanz- und Buchhaltungsberufe. Tastaturkürzel beschleunigen Ihre Modellierungsfähigkeiten und sparen Zeit. Erfahren Sie mehr über das Bearbeiten, Formatieren, Navigieren, Multifunktionsleisten, Einfügen von Spezialfunktionen, Datenmanipulation, Formel- und Zellenbearbeitung und andere Verknüpfungen, mit denen Benutzer den Befehl ausführen können.

Aktuelle Prozedur ausführen (F5)

Eine der Methoden zum Debuggen von VBA-Code ist das Ausführen des Codes. Die Tastenkombination für den Befehl lautet F5 . Setzen Sie zunächst den Cursor in die UserForm oder das Sub (Makro) und drücken Sie dann F5, um das Sub auszuführen. Bitte beachten Sie, dass F5 nicht funktioniert, wenn ein Sub ausgeführt wird, für dessen Ausführung Parameter erforderlich sind. Funktionen Liste der wichtigsten Excel-Funktionen für Finanzanalysten. Dieser Spickzettel enthält Hunderte von Funktionen, die für Excel-Analysten von entscheidender Bedeutung sind.

Code überschreiten

Das Übersteigen von Code ist einer der Befehle, die im Debug-Menü des VBA-Editors verfügbar sind. Der Befehl erfordert, dass Benutzer geschickt über jede Zeile des VBA-Codes im zweiten Unterabschnitt gehen. Wenn der Code ein anderes Sub erfordert, gehen Sie einfach über das zweite Sub und führen Sie den Code weiter aus. Um den Code auszuführen, drücken Sie gleichzeitig Umschalt + F8 , um das zweite Sub auszuführen.

Code verlassen

Der Befehl zum Aussteigen hilft dem Benutzer, aus dem aktuell ausgeführten Sub herauszukommen. Die Verknüpfung für den Befehl besteht darin, Strg + Umschalt + F8 zu drücken . Es kann verwendet werden, wenn der Benutzer aus einem Sub aussteigen möchte, das er absichtlich oder versehentlich eingegeben hat. Wenn der Befehl ausgeführt wird, wird der Code im aktuell ausgeführten Sub ausgeführt. Der Code stoppt jedoch bei der nächsten Anweisung nach dem Aufruf des Sub.

Haltepunkte

Der Haltepunkt gibt die Zeile in Ihrem Code an, in der VBA die Ausführung der Makrooperation beim Debuggen des Codes anhalten soll. Durch die Angabe des Haltepunkts wird verhindert, dass VBA in eine Schleife der IF-Anweisung gerät.

Die Tastenkombination zum Hinzufügen eines Haltepunkts lautet F9 . Erstellen Sie einen Haltepunkt, positionieren Sie den Cursor auf der bestimmten Zeile Ihres Codes, in der VBA angehalten werden soll, und drücken Sie F9. Suchen Sie alternativ die Codezeile, in der Sie den Haltepunkt hinzufügen möchten, und klicken Sie auf den linken grauen Rand neben der Zeile.

Am Rand neben der angegebenen Linie wird ein dunkelroter Punkt angezeigt, um anzuzeigen, dass der Haltepunkt erstellt wurde. Die angegebene Codezeile wird ebenfalls mit derselben Farbe (dunkelrot) hervorgehoben. Mit dem VBA-Editor kann der Benutzer so viele Haltepunkte festlegen, wie beim Debuggen des Codes erforderlich sind, um zu überprüfen, ob er ordnungsgemäß funktioniert.

Um den Haltepunkt zu entfernen, klicken Sie einfach erneut auf den Punkt oder drücken Sie F9, wobei sich der Cursor in der hervorgehobenen Codezeile befindet. Wenn es viele Haltepunkte gibt, kann der Benutzer alle gleichzeitig entfernen, indem er Strg + Umschalt + F9 drückt .

Verwenden von VBA Debug.Print

Das Debug.Print-Tool ist eine nützliche Funktion im VBA-Editor, mit der Excel-Benutzer die Funktionsweise des Codes bewerten können. Darüber hinaus werden Änderungen der im Programm erstellten Variablen analysiert. Debug.Print ist eine Alternative zur MsgBox-Funktion in VBA, mit der auch die Ausgabe des Fensters beim Ausführen des Programms angezeigt wird.

Im Gegensatz zu Msgbox ist bei Debug.Print nicht jedes Mal eine Bestätigung oder Bestätigung erforderlich. Es wird auch verwendet, um die Werte von Variablen anzuzeigen, indem im unmittelbaren Fenster ein Protokoll der zurückgegebenen Werte angezeigt wird. Das Tool wertet einen Code effektiv aus, um sicherzustellen, dass er ordnungsgemäß funktioniert, und erkennt Fehler im Code. Es druckt die Variablen, Zahlen, Arrays und Zeichenfolgen in den aktiven und leeren Excel-Tabellen aus.

Zusätzliche Ressourcen

Finance bietet die FMVA® ™ FMVA®-Zertifizierung (Financial Modeling & Valuation Analyst) an. Schließen Sie sich mehr als 350.600 Studenten an, die für Unternehmen wie Amazon, JP Morgan und Ferrari arbeiten, um ihre Karriere auf die nächste Stufe zu heben. Um weiter zu lernen und Ihre Karriere voranzutreiben, sind die folgenden Ressourcen hilfreich:

  • Excel VBA-Beispiele Excel VBA-Beispiele Mit Excel VBA kann der Benutzer Makros erstellen, die Prozesse in Excel automatisieren. In diesem Handbuch werden anhand von Excel VBA-Beispielen gezeigt, wie ein Makro durch Einrichten des Makros aufgezeichnet, Variablen deklariert und Daten referenziert werden.
  • Wie füge ich eine VBA-Schaltfläche in Excel hinzu? Wie füge ich eine VBA-Schaltfläche in Excel hinzu? Wenn Sie eine Arbeitsmappe verwenden, die VBA-Code enthält, können Sie eine Makroschaltfläche hinzufügen, um anderen Excel-Benutzern das Ausführen des Codes ohne Kenntnis zu erleichtern
  • VBA-Zellreferenzen VBA-Zellreferenzen Mit VBA-Zellreferenzen kann der Benutzer Excel mitteilen, wo nach den benötigten Daten gesucht werden soll. Nach dem Erstellen des Makros und dem Deklarieren der Variablen besteht der nächste Schritt darin, VBA-Zellreferenzen zu erstellen, die sich tatsächlich auf jede Variable beziehen und die dann zum Bearbeiten der Daten in der Excel-Tabelle verwendet werden können.
  • Übergang von Excel zu Python Übergang von Excel zu Python Viele Unternehmen wechseln jetzt von Excel zu Python, einer allgemeinen Programmiersprache auf hoher Ebene, die vom niederländischen Programmierer Guido van Rossum entwickelt wurde

Empfohlen

Was ist das Gesetz eines Preises (LOOP)?
Was ist Tauschhandel?
Was ist eine Veräußerung?