Optimer VBA præstation i Microsoft Word ved at sætte dig selv med , hvor meget hukommelse de forskellige datatyper , operatorer og funktioner bruges. For eksempel er " integer " variabler konverteres automatisk til "lange" variabler , hvilket betyder at det ville være klogere når det er muligt at bare erklære "lange" variabler i stedet for " heltal " variabler. Lignende tricks findes for mange andre VBA komponenter. Instruktioner
Variable
1
Angiv en datatype , når du angiver en variabel , fordi uspecificerede variabler tildeles en variant type og denne type bruger mere hukommelse end de andre typer.
< Br > 2.
Udnyt en valuta datatype over floating-point datatype når det er muligt . Det giver næsten samme funktionalitet som det sidste, men det kan blive behandlet hurtigere .
3
Udnyt objektvariabler , hvis du skal henvise til et objekt mere end én gang inden et modul , som det gemmer objektet variabel i hukommelsen og dermed forhindrer VBA fra at skulle slå det op hver eneste gang.
4
Store array elementer i midlertidige variabler , før du kører dem gennem en løkke , som det er meget langsommere til at hente dem gennem et array.
5.
Erklær tomme variabler ved at bruge " vbNullString " i stedet for anførselstegn . Da " vbNullString " er en funktion i stedet for en streng, kan det derfor blive behandlet lidt hurtigere .
Diverse
6
Reducer sammenkædning operationer når det er muligt ved at bruge " ; mid "-funktionen i stedet. Husk på, at udskiftning strengen skal være den samme længde som substring du agter at udskifte.
7
Loop gennem en kollektion med " for hver " erklæring snarere end ved hjælp af et indeks. For eksempel er det bedre at skrive " for hver variabel som VARIABLE_SUB ", end det er at skrive " for i = 1 til VARIABLE.count ".
8
Udfør heltalsdivision med " ; \\ " integer division operatør fordi standarden " /" floating-point division operatør beregner altid en dobbelt typen værdi
9
Konverter string tegn ANSI værdier, når man sammenligner string variabler. . For eksempel udtrykket ", hvis asc ( strText ) = 32 derefter" behandler hurtigere end udtrykket » hvis venstre ( strText , 1) = " " ' .
< Br >