Visual Basic for Applications:
Skriva ut felsökningsdata

Hur man gör:

I VBA är Debug.Print-uttrycket arbetshästen för att skriva ut felsökningsinformation till det Omedelbara Fönstret i Visual Basic Editorn (VBE). För att använda denna funktion effektivt måste du ha det Omedelbara Fönstret synligt (Visa > Omedelbart Fönster eller tryck Ctrl+G i VBE).

Här är ett enkelt exempel på att använda Debug.Print för att utmatning av värdet på en variabel och ett anpassat meddelande:

Sub PrintDebugInfo()
    Dim sampleVar As Integer
    sampleVar = 42
    Debug.Print "Värdet av sampleVar är: "; sampleVar
End Sub

När du kör denna subrutin kommer det Omedelbara Fönstret att visa:

Värdet av sampleVar är: 42

Du kan också använda det för att spåra flödet av komplex villkorslogik genom att placera Debug.Print-uttryck inom olika grenar av din kod:

Sub CheckValue()
    Dim valueToCheck As Integer
    valueToCheck = 9
    
    If valueToCheck > 10 Then
        Debug.Print "Värdet är större än 10."
    ElseIf valueToCheck < 10 And valueToCheck > 0 Then
        Debug.Print "Värdet är mellan 1 och 9."
    Else
        Debug.Print "Värdet är 10 eller mindre än 1."
    End If
End Sub

Att köra CheckValue ger:

Värdet är mellan 1 och 9.

Kom ihåg, utmatningen från Debug.Print går enbart till det Omedelbara Fönstret, vilket är extremt användbart under utvecklingsfasen men som inte visas i några användarorienterade delar av en applikation.

Fördjupning

Det Omedelbara Fönstret och Debug.Print-metoden har djupa rötter i historien om Visual Basic for Applications och återspeglar utvecklingen av felsökningspraxis över tid. Inledningsvis var felsökningen en mer textuell och mindre visuell process, med utvecklare som förlitade sig kraftigt på utskriftsuttryck för att förstå vad deras kod gjorde. Över åren, i takt med att utvecklingsmiljöerna utvecklades, gjorde det även felsökningsverktygen, vilket introducerade brytpunkter, klockor och mer sofistikerade profilering verktyg som ger en mer interaktiv och omedelbar inblick i kodens beteende.

Ändå är Debug.Print och det Omedelbart Fönstret fortfarande otroligt användbart, särskilt för snabba och smutsiga felsökningssessioner eller när man hanterar kod som är svår att bryta in i (som händelsehanterare). Det sagt, är det viktigt att erkänna att att luta sig enbart mot utskriftsuttryck för felsökning i modern programmering kan vara mindre effektivt jämfört med att utnyttja integrerade felsökare med brytpunkts-, klock- och stackinspektionsfunktioner.

Medan alternativ som loggningsramverk eller mer avancerade felsökningsverktyg erbjuder fler funktioner och flexibilitet, är enkelheten och omedelbarheten hos Debug.Print i VBA ett värdefullt verktyg, särskilt för programmerare som övergår från andra språk som redan är vana vid utskriftsbaserade felsökningstekniker. Dock, när de blir mer bekväma med VBA och Visual Basic Editorn, kan utforskning av det fulla utbudet av tillgängliga felsökningsverktyg leda till mer effektiva och effektiva problemlösningar.