Como gerenciar efetivamente variáveis, constantes e enumerações no VBA para iniciantes

Scope

Isso se refere à parte do código em que as variáveis podem ser usadas. Existem vários tipos de escopos:

  • Local Scope: As variáveis declaradas em um procedimento só são acessíveis nesse procedimento.
  • Module Scope: As variáveis declaradas como Privadas na parte superior do módulo são acessíveis a todos os procedimentos no módulo.
  • Global Scope: As variáveis declaradas como Public podem ser acessadas de qualquer procedimento em um projeto VBA.

Lifetime

Refere-se a quanto tempo uma variável permanece na memória durante a execução do programa.

  • As variáveis locais existem apenas durante o procedimento e desaparecerão quando o procedimento for concluído.
  • A variável global (que é declarada como Pública) existe enquanto o aplicativo estiver em execução e permanece até que o aplicativo seja fechado.

Trabalhando com constantes

Uma constante é um valor fixo e que não muda durante o programa. Ao contrário das variáveis cujos valores podem ser alterados a qualquer momento, as constantes sempre terão o mesmo valor em todo o programa. As constantes são muito úteis para armazenar valores fixos e imutáveis, como valores pi ($$\pi$$), limites máximos ou mensagens fixas.

Diferença entre variável e constante

Variável: O valor pode ser alterado durante o programa. Exemplo:

Dim userAge As Integer
userAge = 25 ' Value can be changed
userAge = 30 ' Value can be changed

Constante: o valor não pode ser alterado depois de declarado. Exemplo:

Const MAX_USERS As Integer = 100 ' Value cannot be changed

O uso de constantes pode melhorar a legibilidade do código e reduzir a probabilidade de erros, pois os programadores não precisam se preocupar com alterações acidentais de valor.

Como declarar constantes

Para declarar uma constante no VBA, use the keyword Const, seguido pelo nome da constante, o tipo de dados e o valor que você deseja definir. Aqui está um exemplo de declaração de uma constante:

Const PI As Double = 3.14159 ' Declares PI constant
Const WELCOME_MESSAGE As String = “Welcome!” ' Declares welcome message constant

Uma vez declarado, você pode usar essa constante em seu código como uma variável regular, mas o valor não pode ser alterado:

Constantes internas e personalizadas

O VBA tem muitas constantes internas que ajudam na escrita de código. Essas constantes pré-existiam e são frequentemente usadas para regular propriedades, métodos ou funções existentes.

1. Constantes para MsgBox:

  • vbOKOnly: Exibe apenas o botão “OK”.
  • vbYesNo: Exibe os botões “Sim” e “Não”.
  • vbInformation: Exibe o ícone de informações.

Exemplos de uso:

Sub ShowMessage()
     MsgBox “Do you want to continue?”, vbYesNo + vbInformation, “Confirm”
End Sub

2. Constantes para alinhamento:

  • xlCenter: Alinha o texto no meio.
  • xlLeft: Alinha o texto à esquerda.
  • xlRight: Alinha o texto à direita.

Exemplos de uso:

Sub SetAlignment()
      Dim ws As Worksheet
     Set ws = ThisWorkbook.Sheets(1)

     Ws. Cells(1, 1). Value = “Welcome”
     Ws. Cells(1, 1). HorizontalAlignment = xlCenter
End Sub

3. Constantes de cor:

  • vbRed: Vermelho.
  • vbGreen: Verde.
  • vbBlue: Azul.

Exemplos de uso:

Sub ShowColor()
      Dim ws As Worksheet
     Set ws = ThisWorkbook.Sheets(1)

     Ws. Cells(1, 1). Value = “Red Color”
     Ws. Cells(1, 1). Font.Color = vbRed

End Sub

Últimos artigos