VBA debug-udskrivning - Sådan bruges Debug.Print til at analysere VBA-kodeoutput?

Indholdsfortegnelse

Excel VBA debug.Print

Debug Print er et af de nyttige værktøjer, der præsenteres i VBA-editoren til at finde ud af, hvordan et program fungerer, og det hjælper med at analysere ændringer i værdierne for variabler, der er oprettet i VBA-programmet. Det viser output fra promptvinduet, når vi kører programmet uden nogen fejl.

Debug.print tilbyder de to største fordele i forhold til brugen af ​​Msgbox til at vise output af koden. Det eliminerer behovet for at klikke på OK-knappen hver gang og viser loggen over returnerede outputværdier til de øjeblikkelige vinduer. Det sparer meget tid for brugerne. Denne artikel forklarer brugen af ​​excel VBA Debug Print med mange eksempler og forklarer, hvordan man bruger den, der dækker følgende ting.

Hvad er VBA Debug Print?

Fejlfinding er et objekt i VBA og bruges med de to metoder kaldet Assert and Print. Udskriften er nyttige meddelelser på displayet og hævder, at det er nyttigt til evaluering af forholdene. Fejlret i VBA. Udskriftserklæringen bruges ethvert sted i kodningsprogrammet til at vise værdierne for en variabel eller meddelelser i det øjeblikkelige vindue. Disse behøver ikke nogen bekræftelse eller bekræftelse og viser ingen effekt på den udviklede kode. Det er sikkert og bedst at bruge i koden i situationen for at lette adgangen til mange brugere. Disse er bare nyttige til test eller evaluering af koden for at bekræfte, at den fungerer korrekt eller ej. Det udskriver variabler, strenge, tal, array, værdier i excel-ark og tomme og aktive ark.

Sådan bruges Excel VBA-fejlretningsudskrivning?

VBA debug.print er erklæringen, der er nyttig til at vise flere variabler ad gangen i det øjeblikkelige vindue. Det er den bedste og alternative tilgang til at vise output.

For eksempel,

Fejlfinding. Antal optællinger, sum, gennemsnit, standardafvigelser

Som vist i eksemplet er alle variabler adskilt med kommaer. Denne erklæring kan overføre output til det øjeblikkelige vindue, selvom et vindue ikke åbnes. Det stopper ikke med at køre koden som i Msgbox. Denne fleksibilitet understøtter kontinuerlig overvågning af ændringer i output vedrørende ændringer i koden.

Variablerne tæller, sum, gennemsnit og standardafvigelse vises på samme linje med lige mellemrum mellem dem. Hvis det øjeblikkelige vindue ikke åbnes, skal du følge følgende trin for at se output.

Skridt til at åbne det øjeblikkelige vindue og se output

  • Tryk på Ctrl + G eller klik på menuen 'Vis' i VBA-editoren.
  • Vælg indstillingen 'Umiddelbart vindue'.
  • Placer markøren i vinduet, og kør koden igen.
  • Overhold output i vinduet.

Eksempler på Excel VBA Debug.Print

Følgende er eksemplerne for at demonstrere brugen af ​​debug print i excel VBA.

Eksempel # 1 - Visning af variablernes værdier

Gå først til fanen Udvikler, klik på Makroer, og opret en makro til at skrive koden i VBA og tilføje et navn til den.

Når du har tilføjet et navn, skal du klikke på Opret. Dette åbner VBA-editoren.

Udvikl et lille program som vist i figuren.

Kode:

Undervariabler () Dim X som heltal Dim Y som streng Dim Z som dobbelt X = 5 Y = "John" Z = 105.632 Fejlfinding.Print X Debug.Print Y Debug.Print Z End Sub

Som vist på skærmbilledet reduceres tre dimensioner eller variabler som henholdsvis X, Y og Z som et heltal, streng og dobbelt. For at udskrive disse værdier bruges Debug.print, og output vises i promptvinduet. Tryk på CTRL + G for at se resultatet, som vist på skærmbilledet.

Kør denne kode ved hjælp af F5-tasten, og tryk på CTRL + G for at se output i øjeblikkeligt vindue.

Dette program kan forenkles ved at adskille debug-print-udsagnene med et komma.

Kode:

Undervariabler () Dim X som heltal Dim Y som streng Dim Z som dobbelt X = 5 Y = "John" Z = 105.632 Fejlfinding.Print X, Y, Z End Sub

Denne fejlretningserklæring udskriver output på samme linje som vist på skærmbilledet.

Eksempel # 2 - Fejlret udskrivning til fil

Dette eksempel illustrerer brugen af ​​VBA-fejlretningsudskrivning til at vise output til en fil, når længden af ​​teksten er for høj.

Programmet til udskrivning af output på en fil er udviklet som vist i figuren.

Kode:

Sub DebugPrintToFile () Dim s som streng Dim num som heltal num = FreeFile () Åbn "D: Articles Excel test.txt" For output som #num s = "Hej verden!" Debug.Print s 'skriv til det øjeblikkelige vindue Udskriv #num, s' skrivoutput til fil Luk #num End Sub

I dette program betragtes to variabler kaldet S og Num som streng og heltal. Den åbne erklæring bruges til at oprette en tekstfil med navnetesten. En kolonne kaldet “Hello World” erklæres i variablen S.

Når du kører VBA-koden manuelt eller bruger F5-tasten, skrives output i det øjeblikkelige vindue, og filen ad gangen vises i mappen.

The output to file is shown in the below-mentioned figure.

Printing output to file is beneficial when long text is presented.

Example #3 - Displaying the Factorial of a Number in the Immediate Window

This example illustrates the use of the debug-a print statement to show the factorial of a number.

Code:

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

To determine the factorial, three variables are considered, including the count, number, and fact. For loop is taken to repeat the multiplication of fact-value with count to determine factorial of the number.

Here, debug. The print statement is used outside the “for” loop to display the value after completing the circle. The output is determined.

If we use debug. Print statement inside the “for” loop, the fact-value is displayed for every recurring time, as shown in the figure.

Code:

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

Run the code by pressing the F5 key and see the output in the immediate window. In this situation, we should consider the last value as the factorial of the given number.

Example #4 - Printing the Full name of the Active Workbook

This example explains how to print the current workbook name into the prompt window.

The program is developed, as shown in the figure.

Code:

Sub Activework() Dim count As Long For count = 1 To Workbooks.count Debug.Print Workbooks(count).FullName Next count Debug.Print count End Sub

Her er 'count' den variabel, der tages for at tælle antallet af aktive projektmapper og for at vise det fulde navn på den aktive projektmappe. Det fulde navn og antallet af aktive projektmapper vises som vist i figuren.

Stien til projektmappen i drevene vises nøjagtigt ved hjælp af VBA debugprint-sætningen.

Ting at huske

  • Hovedproblemet med debug .print er ingen mulighed for tekstindpakning til lange strenge i det umiddelbare vindue
  • Det øjeblikkelige vindue skal bringes til toppen for at se output i brugergrænsefladen
  • Det er umuligt at indpakke den lange tekst, der vises i det øjeblikkelige vindue. I denne situation skal resultatet vises til en fil, der er gemt på drevet.

Interessante artikler...