VBA – Expressão Constante Obrigatória
Abordamos matrizes, matrizes estáticas e matrizes dinâmicas em um tutorial anterior. Vamos dar uma olhada em um erro comum associado a matrizes estáticas chamado Expressão Constante Obrigatória. Esse erro é gerado quando você tenta usar uma matriz estática em vez de uma matriz dinâmica, conforme mostrado no código abaixo:
A matriz estática precisa ter constantes usadas para defini-la, pois ela é fixa.
A maneira de resolver esse erro é usar uma variável de matriz dinâmica. Você usaria a palavra-chave ReDim sempre que quisesse redimensionar a matriz. Isso é mostrado no código abaixo
Sub UsandoReDim()
Dim Valor1 As Integer
Dim Valor2 As Integer
Dim Valor3 As Integer
Valor1 = 3
Valor2 = 9
Valor3 = 15
Dim ListaDeValores() As Integer
ReDim ListaDeValores(Valor1)
End Sub
Leia mais sobre variáveis de matriz dinâmica em nosso tutorial sobre variáveis de matriz.