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.
Outros artigos interessantes
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