VBA – Expressão Constante Obrigatória

Written by

Mel Jenkins

Reviewed by

Steve Rynearson

Translated by

Daniel Caramello

Last updated on September 7, 2023

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:

erro expressao constante obrigatoria

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.

vba-free-addin

Exemplos de Add-ins de Códigos VBA

Acesse facilmente todos os exemplos de código que se encontram em nosso site.

Simply navigate to the menu, click, and the code will be inserted directly into your module. .xlam add-in.

(Nenhuma instalação necessária!)

Baixe de Graça

Retornar aos Exemplos de Códigos VBA