Ok! Denne er viktig.
Enhver god VBA -prosedyre har alltid denne linjen nevnt i begynnelsen.
Application.Screenupdating = FALSE
Og før slutten av prosedyren vil du også se denne linjen.
Application.Screenupdating = TRUE
Hva er ScreenUpdating?
Screenupdating er egenskapen til applikasjonsobjekter i VBA. Den kan settes til SANN eller FALSK. Det er som en bryter, som kan slås på eller av.
Og hva gjør det?
Den første linjen øker makrobehandlingen ved å stoppe sanntids skjermoppdatering av Excel.
Hvis du har en lang makro som skriver inn i forskjellige ark, bruker filtre, fjerner filtre, endrer ark, lagrer arbeidsbøker osv. Og hvis du ikke har slått av skjermoppdateringer med linjen Application.Screenupdating = FALSE, vil du se flimrer på skjermen. Hver endring utført av makro i arbeidsboken vil bli vist dynamisk. Dette reduserer makrohastigheten.
Og hvis du har denne linjen i begynnelsen av makroen, vil excel ikke gjenspeile endringer gjort av makro før skjermoppdatering er slått på med linjen Application.Screenupdating = TRUE.
Hvis du vil fremskynde makroen, deaktiverer du skjermoppdateringen i begynnelsen av underprogrammet og aktiverer skjermoppdateringen før slutten av underprogrammet.
Her er ett eksempel:
Sub Screencheck () Application.Screenupdating = FALSE 'Deaktiverer oppdatering av skjermen. Sheet1.Activate Range ("A1"). Value = "Hi" Range ("A2"). Value = "How are you?" Range ("A3"). Value = "Exceltip er fantastisk, ikke sant?" Ark 2.Aktiver Application.Screenupdating = TRUE 'Aktiverer oppdatering av skjermen. Slutt Sub
Når du kjører suben ovenfor, vil du ikke se noen skjerm som flimrer. Du vil se det endelige resultatet av arbeidet med denne makroen.
Viktige notater:
Sørg for at du aktiverer skjermoppdateringen før prosedyren avsluttes. Hvis du ikke aktiverer skjermoppdateringen, vil du ikke kunne se arbeidet utført av makroen.
Kan ikke oppdatere skjermen før hver Exit Sub- og End Sub -kommando. Det er vanlig å glemme å aktivere skjermoppdateringer før Exit Sub. Hvis du ikke gjør dette, kan du fortsette å lure på hvorfor koden din ikke fungerte. Men i virkeligheten gjorde det det. Du kan bare ikke se det.
Det er det. Dette er hva Application.Screenupdating = False gjør i VBA. Denne ene kodelinjen endrer seg mye. Det er forskjellen mellom moden programmering og uforsiktig programmering. Hvis du vil fremskynde makroen, må du alltid bruke denne linjen i koden.
Jeg håper dette var nyttig for deg. Hvis du er i tvil om denne artikkelen eller har andre Excel/VBA -relaterte spørsmål, kan du stille dem i kommentarfeltet nedenfor. Jeg hjelper deg gjerne.
Hva er forskjellen mellom ByRef og ByVal Arguments? : Dette er et viktig VBA -spørsmål. ByVal og ByRef brukes til å sende argumenter annerledes. Den ene lar endringen foretas i den opprinnelige variabelen, mens den andre ikke endrer den opprinnelige variabelen.
Slik går du gjennom ark i Excel ved hjelp av VBA : Mens du automatiserer de vanlige kjedelige oppgavene med excel i VBA, får du behovet for å gå gjennom hvert ark. La oss starte med et eksempel. VBA -kode til løkke i alle arkene i Activeworkbook og utskriftsarkets navn
Hendelser i Excel VBA: Noen ganger vil vi at noe skal skje automatisk når en bestemt hendelse oppstår. For å gjøre noe når en bestemt hendelse skjer i Excel, bruker vi Excel VBA -hendelse
Populære artikler:
50 Excel -snarveier for å øke produktiviteten | Bli raskere på oppgaven din. Disse 50 snarveiene får deg til å jobbe enda raskere med Excel.
VLOOKUP -funksjonen i Excel | Dette er en av de mest brukte og populære funksjonene til excel som brukes til å slå opp verdi fra forskjellige områder og ark.
COUNTIF i Excel 2016 | Tell verdier med betingelser ved hjelp av denne fantastiske funksjonen. Du trenger ikke å filtrere dataene dine for å telle spesifikke verdier. Countif -funksjonen er avgjørende for å forberede dashbordet.
Slik bruker du SUMIF -funksjonen i Excel | Dette er en annen viktig funksjon på dashbordet. Dette hjelper deg med å oppsummere verdier på spesifikke forhold.