Otimizar o desempenho do VBA no Microsoft Word por familiarizar-se com a quantidade de memória diferentes tipos de dados , operadores e funções usam . Por exemplo, " inteiros " variáveis são convertidas automaticamente para as variáveis "longo", o que significa que seria mais sensato quando possível apenas declarar variáveis "longas " em vez de variáveis " inteiros " . Existem truques semelhantes para muitos outros componentes do VBA. Instruções
Variáveis
1
Especifique um tipo de dados sempre que você declarar uma variável , porque as variáveis não especificadas são atribuídos a um tipo de variante , e este tipo usa mais memória do que os outros tipos.
< Br > 2
Utilize um tipo de dados de moeda sobre o tipo de dados de ponto flutuante sempre que possível. Ele oferece praticamente a mesma funcionalidade que o último, mas ele pode ser processado mais rápido.
3
Aproveite variáveis de objeto se você deve se referir a um objeto mais de uma vez dentro de um módulo , como ele armazena a variável de objeto na memória e , portanto, impede VBA de ter que procurá-lo a cada momento.
quatro elementos da matriz
loja em variáveis temporárias antes de executá-los através de um loop , como é muito mais lento para recuperá-los por meio de uma matriz .
5
Declare variáveis vazias usando " vbNullString " em vez de aspas duplas. Uma vez que " vbNullString " é uma função em vez de uma string, ele pode , portanto, ser processado um pouco mais rápido .
Diversos
6
Reduzir operações de concatenação , quando possível , usando o " ; meio " em vez disso. Tenha em mente que a string de substituição deve ser o mesmo comprimento que o substring que você pretende substituir.
7
loop através de uma coleção com o " para cada " declaração em vez de usar um índice. Por exemplo, é melhor escrever " para cada variável como VARIABLE_SUB " do que está a escrever " para i = 1 a VARIABLE.count ".
8
Realize divisão inteira com o " , \\ "integer operador de divisão porque o padrão " /" operador de divisão de ponto flutuante sempre calcula um valor de tipo double
9
Converte caracteres de string para valores ANSI ao comparar variáveis de cadeia . . Por exemplo, a expressão "se asc ( strText ) = 32 e depois" os processos mais rapidamente do que a expressão "se a esquerda ( strText , 1) =" " 'em .
< Br >