En af fordelene ved at VBA er et fortolket sprog er, at vi kan udføre individuelle procedurer uden at skulle kompilere hele applikationen. Lad os undersøge præcis, hvordan vi gør det.
Offentlige procedurer
Offentlige rutiner uden argumenter
I et standardmodul kan du placere markøren inde i en offentlig rutine, der ikke har nogen argumenter, tryk på [F5], og den rutine vil straks udføres.
Hvis du vil træde gennem rutinen, kan du enten indstille et brudpunkt på en af linjerne, før du trykker på [F5] eller blot trykke på [F8] ("Step Into") og straks begynde at træde gennem koden for rutinen.
Offentlige funktioner uden argumenter
Dette fungerer også med offentlige funktioner i standardkodemoduler. Nøglen er, at funktionen ikke kan acceptere nogen argumenter, ikke engang valgfrie.
Offentlige procedurer med argumenter
Hvad sker der, hvis du forsøger at udføre en offentlig procedure, der kræver et eller flere argumenter (selv valgfrie)? Kommandoen "Kør> Kør makro" udfører:
Private procedurer
Private procedurer uden argumenter
Jeg kan ikke tage æren for at opdage denne. En særlig tak går til Terry Chapman for at have videregivet det faktum, at du kan trykke på F5 for at fejlsøge Privat procedurer på plads, ikke kun offentlige procedurer.
Ligesom Terry plejede jeg midlertidigt at ændre mine private procedurer til offentlige, mens jeg fejlede dem. Det viser sig, at jeg aldrig behøvede at gøre det overhovedet.
Private procedurer Med Argumenter
Da Terry fik mig til at stille spørgsmålstegn ved mine antagelser, besluttede jeg mig for at se, hvor meget jeg kunne slippe af sted med. Meget mere, end jeg havde forventet, viser det sig!
Tro det eller ej, du kan fejlsøge private procedurer, der tager argumenter uden midlertidigt at ændre dem til offentlige procedurer. For at gøre dette skal du blot kalde det fuldt kvalificerede procedurenavn fra det øjeblikkelige vindue. Med "fuldt kvalificeret navn" mener jeg navnet i formatet {ModuleName}.{ProcedureName}
.
Tjek dette eksempel:
Men tag ikke mit ord for det. Prøv det!