VBA felsökningsutskrift

Excel VBA-felsökning. Utskrift

Debug Print är ett av det användbara verktyget som presenteras i VBA-redigeraren för att ta reda på hur ett program fungerar och det hjälper till att analysera förändringarna i värdena på variabler som skapats i VBA-programmet. Det visar resultatet från det omedelbara fönstret när vi kör programmet utan några buggar.

Debug.print erbjuder de två främsta fördelarna jämfört med användningen av Msgbox för att visa kodens utdata. Det eliminerar behovet av att klicka på OK-knappen varje gång och visar loggen över returnerade utdatavärden för de omedelbara fönstren. Det sparar mycket tid för användarna. Den här artikeln förklarar användningen av excel VBA Debug Print med många exempel och förklarar hur man använder den som täcker följande saker.

Vad är VBA Debug Print?

Debug är ett objekt i VBA och används med de två metoderna som kallas Assert and Print. Utskriften är till hjälp vid visningsmeddelanden och hävdar att det är till hjälp vid utvärderingen av förhållandena. I VBA används debug.print-uttalande på vilken plats som helst i kodningsprogrammet för att visa värdena för en variabel eller meddelanden i Omedelbart fönster. Dessa behöver ingen bekräftelse eller bekräftelse och visar ingen effekt på den utvecklade koden. Det är säkert och bäst att använda i koden i situationen för att underlätta åtkomst för många användare. Dessa är bara till hjälp vid testning eller utvärdering av koden för att bekräfta att den fungerar korrekt eller inte. Utskrift av variabler, strängar, siffror, matris, värden i excel-ark och tomma och aktiva ark.

Hur använder jag Excel VBA-felsökning?

VBA debug.print är uttalandet som hjälper till att visa fler antal variabler åt gången i det omedelbara fönstret. Det är det bästa och alternativa sättet att visa produktionen.

Till exempel,

Debug.print antal, summa, genomsnitt, standardavvikelse

Som visas i exemplet separeras alla variabler med kommatecken. Detta uttalande kan överföra utdata till det omedelbara fönstret även om ett fönster inte öppnas. Det slutar inte köra koden som i Msgbox. Denna flexibilitet stöder kontinuerlig övervakning av förändringarna i utdata med avseende på ändringar i koden.

Variablerna räknas, summan, genomsnittet och standardavvikelsen visas på samma rad med lika utrymme bland dem. Om Omedelbart fönster inte öppnas följer du följande steg för att se utdata.

Steg för att öppna omedelbart fönster och se resultatet

  • Tryck på Ctrl + G eller klicka på "Visa" -menyn i VBA-redigeraren.
  • Välj alternativet 'Omedelbart fönster'.
  • Placera markören i fönstret och kör koden igen.
  • Observera utdata i fönstret.

Exempel på Excel VBA Debug.Print

Följande är exempel för att demonstrera användningen av felsökningstryck i excel VBA.

Du kan ladda ner VBA Debug Print Excel-mall här - VBA Debug Print Excel-mall

Exempel nr 1 - Visa värdena på variablerna

Gå först till fliken Utvecklare, klicka på Makron och skapa ett makro för att skriva koden i VBA och lägg till ett namn till den.

Efter att ha lagt till namn klickar du på skapa. Detta öppnar VBA-redigeraren.

Utveckla ett litet program som visas i figuren.

Koda:

 Delvariabler () Dim X som heltal Dim Y som sträng Dim Z som dubbel X = 5 Y = "John" Z = 105,632 Felsökning.Print X Debug.Print Y Debug.Print Z End Sub 

Som visas på skärmdumpen minskas tre dimensioner eller variabler som X, Y och Z som ett heltal, sträng respektive Dubbel. För att skriva ut dessa värden används Debug.print och utdata visas i det omedelbara fönstret. Tryck på CTRL + G för att se utdata som visas på skärmdumpen.

Kör den här koden med F5-tangenten och tryck på  CTRL + G för att se utdata i Omedelbart fönster.

Detta program kan förenklas genom att separera uttalandena debug.print med ett komma.

Koda:

 Delvariabler () Dim X som heltal Dim Y som sträng Dim Z som dubbel X = 5 Y = "John" Z = 105.632 Felsökning.Print X, Y, Z End Sub 

Detta felsökningsuttalande skriver ut utdata på samma rad som visas på skärmdumpen.

Exempel # 2 - Felsök utskrift till fil

Det här exemplet illustrerar användningen av VBA-felsökning för att visa utdata till en fil när längden på texten är för hög.

Programmet för att skriva ut utdata på en fil är utvecklat enligt figuren.

Koda:

Sub DebugPrintToFile () Dim s As String Dim num As Integer num = FreeFile () Öppna "D: \ Articles \ Excel \ test.txt" För utdata som #num s = "Hej världen!" Debug.Print s 'skriv till det omedelbara fönstret Skriv ut #num, s' skriv utdata till fil Stäng #num End Sub

I detta program betraktas två variabler som heter S och Num som en sträng respektive ett heltal. Det öppna uttalandet används för att skapa en textfil med namntestet. En sträng som heter "Hello World" deklareras till variabeln S.

När du kör VBA-koden manuellt eller använder F5-tangenten skrivs utdata i det omedelbara fönstret och filen i taget visas i mappen.

Utdata till fil visas i figuren nedan.

Utskrift till fil är fördelaktig när lång text presenteras.

Exempel # 3 - Visa faktorn för ett nummer i det omedelbara fönstret

Det här exemplet illustrerar användningen av debug.print-uttalandet för att visa ett antal fakta.

Koda:

 Offentlig delfakta () Dimräkning som heltal Dimnummer Som heltal Dimfakta som heltal = 5 Fakta = 1 För räkning = 1 Till nummer Fakta = Fakta * Räkna Nästa räkna felsökning. Skriv ut fakta Slutsub 

För att bestämma faktorn beaktas tre variabler inklusive räkna, antal och fakta. För loop används för att upprepa multipliceringen av faktavärde med räkning för att bestämma faktorn för talet.

Här används debug.print-uttalande utanför “for” -slingan för att visa värdet efter slingans slutförande. Utgången bestäms som.

If we use debug.print statement in inside “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 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 immediate 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 

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.