Making makroer køre hurtigere

09/03/2013 by admin

Makroer, når de kører til højre, kan gøre vores liv lettere. (Hvis de ikke kører lige, livet er bestemt ikke let.) Hvis du har en makro, der gør et stort arbejde for dig, kan du være interesseret i at forsøge at gøre det køre hurtigere.

Den første opgave at gøre, selvfølgelig, er at undersøge makroen og se, om dine algoritmer (den måde du har besluttet at gøre ting) er lige så effektive som de kan være. Når du er tilfreds med, at de er, kan du også fremskynde dine makroer ved blot at sætte flere sætninger på samme linje. Overvej følgende simple makro, som finder den forrige forekomst af noget i et dokument:

Sub PrevFind ()
Med Selection.Find
.ClearFormatting
.forward = False
.Wrap = WdFindAsk
.Execute
End med
End Sub

Denne makro er meget ligetil. Når du gemmer makroen, er de erklæringer, den indeholder parset ned til tre-byte tokens, der kan køre mere effektivt ved VBA. (Du ser aldrig de tokens, du kun se makro-sprog, der svarer til de tokens). Når makroen kører, VBA kommandoen processor griber én linje ad gangen, og udfører alle de tokens på denne linje. Således i det foregående er der otte linjer, der er individuelt hentet og udføres af processoren.

Nu overveje følgende version af den samme makro:

Sub PrevFind ()
Med Selection.Find
.ClearFormatting: .forward = Falsk: .Wrap = wdFindAsk: .Execute
End med: End Sub

Denne version virker meget kortere, fordi de enkelte linjer er blevet sammenkædet og adskilt med et kolon. Dette mindsker læsbarheden af ​​makroen, men det øger den hastighed, hvormed den vil udføre. Hvorfor? Fordi VBA kommandoen processor stadig griber en linje ad gangen til at behandle. I dette eksempel er der kun fire linjer til Grib. Mindre "opsigtsvækkende tid" betyder, at udførelsen er hurtigere. Den tredje linje i denne makro, som bruges til at besætte fire linjer, der nu behandles som en enkelt linje.

Sætte flere sætninger på samme linje betyder nedsætte læsbarheden af ​​en makro. Afhængig af dine behov, men dette kunne være en rimelig afvejning til stigningen hastighed, du kan opnå. Du bliver nødt til at prøve denne teknik i dine egne makroer til at se, om det giver mening for dig.

WordTips er din kilde til omkostningseffektiv Microsoft Word træning. (Microsoft Word er det mest populære tekstbehandlingsprogram i verden.) Dette tip (1640) gælder for Microsoft Word 97, 2000, 2002, og 2003.


Relaterede Artikler

© 2018 - zajacperrone.com| Contact us: webmaster# zajacperrone.com