VBA-Debug-Druck

Excel VBA Debug.Print

Debug Print ist eines der nützlichen Tools im VBA-Editor, um herauszufinden, wie ein Programm funktioniert, und es hilft, die Änderungen der Werte von Variablen zu analysieren, die im VBA-Programm erstellt wurden. Es zeigt die Ausgabe des Sofortfensters, wenn wir das Programm ohne Fehler ausführen.

Debug.print bietet die beiden Hauptvorteile gegenüber der Verwendung von Msgbox zum Anzeigen der Ausgabe des Codes. Es ist nicht mehr erforderlich, jedes Mal auf die Schaltfläche OK zu klicken, und das Protokoll der zurückgegebenen Ausgabewerte wird in den unmittelbaren Fenstern angezeigt. Dies spart den Benutzern viel Zeit. In diesem Artikel wird die Verwendung von Excel VBA Debug Print anhand vieler Beispiele erläutert und die Verwendung unter Verwendung der folgenden Punkte erläutert.

Was ist VBA Debug Print?

Debug ist ein Objekt in VBA und wird mit den beiden Methoden Assert und Print verwendet. Der Ausdruck ist hilfreich bei der Anzeige von Nachrichten und bestätigt bei der Bewertung der Bedingungen. In VBA wird die Anweisung debug.print an einer beliebigen Stelle des Codierungsprogramms verwendet, um die Werte einer Variablen oder von Nachrichten im Direktfenster anzuzeigen. Diese benötigen keine Bestätigung oder Bestätigung und zeigen keine Auswirkungen auf den entwickelten Code. Es ist sicher und am besten, den Code zu verwenden, um vielen Benutzern den Zugriff zu erleichtern. Diese sind nur hilfreich beim Testen oder Auswerten des Codes, um zu bestätigen, dass er ordnungsgemäß funktioniert oder nicht. Drucken von Variablen, Zeichenfolgen, Zahlen, Arrays, Werten in Excel-Tabellen sowie leeren und aktiven Blättern.

Wie verwende ich Excel VBA Debug Print?

VBA debug.print ist die Anweisung, mit der mehr Variablen gleichzeitig im unmittelbaren Fenster angezeigt werden können. Dies ist der beste und alternative Ansatz, um die Ausgabe anzuzeigen.

Beispielsweise,

Debug.print Anzahl, Summe, Durchschnitt, Standardabweichung

Wie im Beispiel gezeigt, werden alle Variablen durch Kommas getrennt. Diese Anweisung kann die Ausgabe auch dann in das unmittelbare Fenster übertragen, wenn ein Fenster nicht geöffnet ist. Der Code wird nicht wie in Msgbox ausgeführt. Diese Flexibilität unterstützt die kontinuierliche Überwachung der Änderungen in der Ausgabe in Bezug auf Änderungen im Code.

Die Variablen Anzahl, Summe, Durchschnitt und Standardabweichung werden in derselben Zeile mit gleichem Abstand angezeigt. Wenn das Direktfenster nicht geöffnet ist, führen Sie die folgenden Schritte aus, um die Ausgabe anzuzeigen.

Schritte zum Öffnen des Sofortfensters und Anzeigen der Ausgabe

  • Drücken Sie Strg + G oder klicken Sie im VBA-Editor auf das Menü 'Ansicht'.
  • Wählen Sie die Option 'Sofortfenster'.
  • Platzieren Sie den Cursor im Fenster und führen Sie den Code erneut aus.
  • Beobachten Sie die Ausgabe im Fenster.

Beispiele für Excel VBA Debug.Print

Die folgenden Beispiele veranschaulichen die Verwendung von Debug-Druck in Excel VBA.

Sie können diese VBA Debug Print Excel-Vorlage hier herunterladen - VBA Debug Print Excel-Vorlage

Beispiel 1 - Anzeigen der Werte der Variablen

Gehen Sie zunächst zur Registerkarte Entwickler, klicken Sie auf Makros und erstellen Sie ein Makro, um den Code in die VBA zu schreiben und ihm einen Namen hinzuzufügen.

Klicken Sie nach dem Hinzufügen des Namens auf Erstellen. Dies öffnet den VBA-Editor.

Entwickeln Sie ein kleines Programm wie in der Abbildung gezeigt.

Code:

 Subvariablen () Dim X als Ganzzahl Dim Y als String Dim Z als Double X = 5 Y = "John" Z = 105.632 Debug.Print X Debug.Print Y Debug.Print Z End Sub 

Wie im Screenshot gezeigt, werden drei Dimensionen oder Variablen als X, Y und Z als Ganzzahl, Zeichenfolge bzw. Double verringert. Zum Drucken dieser Werte wird Debug.print verwendet und die Ausgabe wird im unmittelbaren Fenster angezeigt. Drücken Sie STRG + G , um die Ausgabe zu sehen , wie im Screenshot gezeigt.

Führen Sie diesen Code mit der Taste F5 aus und drücken Sie  STRG + G , um die Ausgabe im Direktfenster anzuzeigen.

Dieses Programm kann vereinfacht werden, indem die Anweisungen debug.print durch ein Komma getrennt werden.

Code:

 Subvariablen () Dim X als Ganzzahl Dim Y als String Dim Z als Double X = 5 Y = "John" Z = 105.632 Debug.Print X, Y, Z End Sub 

Diese Debugs-Anweisung druckt die Ausgabe in derselben Zeile wie im Screenshot.

Beispiel 2 - Drucken in Datei debuggen

Dieses Beispiel zeigt die Verwendung des VBA-Debug-Drucks zum Anzeigen der Ausgabe in einer Datei, wenn der Text zu lang ist.

Das Programm zum Drucken der Ausgabe in eine Datei wird wie in der Abbildung gezeigt entwickelt.

Code:

Sub DebugPrintToFile () Dim s As String Dim num As Integer num = FreeFile () Öffnen Sie "D: \ Articles \ Excel \ test.txt" für die Ausgabe als #num s = "Hallo Welt!" Debug.Print s 'in das unmittelbare Fenster schreiben Print #num, s' Ausgabe in Datei schreiben Close #num End Sub

In diesem Programm werden zwei Variablen mit den Namen S und Num als Zeichenfolge bzw. Ganzzahl betrachtet. Die open-Anweisung wird verwendet, um eine Textdatei mit dem Namenstest zu erstellen. Ein String namens "Hello World" wird in der Variablen S deklariert.

Wenn Sie den VBA-Code manuell oder mit der Taste F5 ausführen, wird die Ausgabe in das unmittelbare Fenster geschrieben und jeweils eine Datei im Ordner angezeigt.

Die Ausgabe in die Datei ist in der folgenden Abbildung dargestellt.

Das Drucken der Ausgabe in eine Datei ist vorteilhaft, wenn Langtext angezeigt wird.

Beispiel 3 - Anzeigen des Faktors einer Zahl im Direktfenster

Dieses Beispiel zeigt die Verwendung der Anweisung debug.print, um die Fakultät einer Zahl anzuzeigen.

Code:

 Public Sub Fact () Dim Count als Integer Dim Number als Integer Dim Fact als Integer number = 5 Fact = 1 For Count = 1 To number Fact = Fact * Count Nächster Count Debug.Print Fact End Sub 

Um die Fakultät zu bestimmen, werden drei Variablen berücksichtigt, einschließlich Anzahl, Anzahl und Fakt. Die for-Schleife wird verwendet, um die Multiplikation des Faktenwerts mit count zu wiederholen, um die Fakultät der Zahl zu bestimmen.

Hier wird die debug.print-Anweisung außerhalb der for-Schleife verwendet, um den Wert nach Abschluss der Schleife anzuzeigen. Die Ausgabe wird bestimmt als.

Wenn wir die Anweisung debug.print in der for-Schleife verwenden, wird der Faktwert für jede wiederkehrende Zeit angezeigt, wie in der Abbildung gezeigt.

Code:

 Public Sub Fact () Dim Count als Integer Dim Number als Integer Dim Fact als Integer number = 5 Fact = 1 For Count = 1 To number Fact = Fact * Count Debug.Print Fact Next Count End Sub 

Führen Sie den Code durch Drücken der Taste F5 aus und sehen Sie die Ausgabe im unmittelbaren Fenster. In dieser Situation sollten wir den letzten Wert als Fakultät der angegebenen Zahl betrachten.

Beispiel 4 - Drucken des vollständigen Namens der aktiven Arbeitsmappe

In diesem Beispiel wird erläutert, wie Sie den aktuellen Arbeitsmappennamen in das unmittelbare Fenster drucken

Das Programm wird wie in der Abbildung gezeigt entwickelt.

Code:

 Sub Activework () Dim count As Long For count = 1 To Workbooks.count Debug.Print Workbooks (count) .FullName Nächste Anzahl Debug.Print count End Sub 

Here ‘count’ is the variable taken to count the number of active workbooks and to display the full name of the active workbook. The full name and number of active workbooks are displayed as shown in the figure.

The path of the workbook in the drives is accurately displayed by using the VBA debug.print statement.

Things to Remember

  • The main issue with the debug .print is no text wrapping option for long strings in the immediate window
  • The immediate window should be brought to top see the output in the user interface
  • It is impossible to wrap the long text displayed in the Immediate Window. In this situation, the output needs to be displayed to a file stored in the drive.