VBA - Variáveis

Variableé um local de memória nomeado usado para conter um valor que pode ser alterado durante a execução do script. A seguir estão as regras básicas para nomear uma variável.

  • Você deve usar uma letra como o primeiro caractere.

  • Você não pode usar um espaço, ponto (.), Ponto de exclamação (!) Ou os caracteres @, &, $, # no nome.

  • O nome não pode ter mais de 255 caracteres.

  • Você não pode usar palavras-chave reservadas do Visual Basic como nome de variável.

Syntax

No VBA, você precisa declarar as variáveis ​​antes de usá-las.

Dim <<variable_name>> As <<variable_type>>

Tipos de dados

Existem muitos tipos de dados VBA, que podem ser divididos em duas categorias principais, a saber, tipos de dados numéricos e não numéricos.

Tipos de dados numéricos

A tabela a seguir exibe os tipos de dados numéricos e o intervalo de valores permitido.

Tipo Faixa de valores
Byte 0 a 255
Inteiro -32.768 a 32.767
Grandes -2.147.483.648 a 2.147.483.648
solteiro

-3,402823E + 38 a -1,401298E-45 para valores negativos

1.401298E-45 a 3.402823E + 38 para valores positivos.

em dobro

-1,79769313486232e + 308 a -4,94065645841247E-324 para valores negativos

4.94065645841247E-324 a 1.79769313486232e + 308 para valores positivos.

Moeda -922.337.203.685.477.5808 a 922.337.203.685.477.5807
Decimal

+/- 79.228.162.514.264.337.593.543.950.335 se nenhum decimal for usado

+/- 7,9228162514264337593543950335 (28 casas decimais).

Tipos de dados não numéricos

A tabela a seguir exibe os tipos de dados não numéricos e o intervalo de valores permitido.

Tipo Faixa de valores
String (comprimento fixo) 1 a 65.400 caracteres
String (comprimento variável) 0 a 2 bilhões de caracteres
Encontro 1º de janeiro de 100 a 31 de dezembro de 9999
boleano Verdadeiro ou falso
Objeto Qualquer objeto embutido
Variante (numérico) Qualquer valor tão grande quanto o dobro
Variante (texto) Igual à string de comprimento variável

Example

Vamos criar um botão e nomeá-lo como 'Variables_demo' para demonstrar o uso de variáveis.

Private Sub say_helloworld_Click()
   Dim password As String
   password = "Admin#1"

   Dim num As Integer
   num = 1234

   Dim BirthDay As Date
   BirthDay = DateValue("30 / 10 / 2020")

   MsgBox "Passowrd is " & password & Chr(10) & "Value of num is " &
      num & Chr(10) & "Value of Birthday is " & BirthDay
End Sub

Output

Ao executar o script, a saída será conforme mostrado na imagem a seguir.