Criar variáveis de objeto
Pode tratar uma variável de objeto exatamente igual ao objeto a que se refere. Pode definir ou devolver as propriedades do objeto ou utilizar qualquer um dos respetivos métodos.
Criar uma variável de objeto
Declare a variável de objeto.
Atribua a variável de objeto a um objeto.
Declarar uma variável de objeto
Utilize a instrução Dim ou uma das outras instruções de declaração (Pública, Privada ou Estática) para declarar uma variável de objeto. Uma variável que se refira a um objeto tem de ser uma Variante, um Objeto ou um tipo específico de objeto. Por exemplo, as seguintes declarações são válidas:
' Declare MyObject as Variant data type.
Dim MyObject
' Declare MyObject as Object data type.
Dim MyObject As Object
' Declare MyObject as Font type.
Dim MyObject As Font
Observação
Se utilizar uma variável de objeto sem a declarar primeiro, o tipo de dados da variável de objeto é Variante por predefinição.
Pode declarar uma variável de objeto com o tipo de dados Objeto quando o tipo de objeto específico não é conhecido até que o procedimento seja executado. Utilize o tipo de dados Objeto para criar uma referência genérica a qualquer objeto.
Se souber o tipo de objeto específico, deve declarar a variável de objeto como esse tipo de objeto. Por exemplo, se a aplicação contiver um tipo de objeto De exemplo, pode declarar uma variável de objeto para esse objeto através de uma destas instruções:
Dim MyObject As Object ' Declared as generic object.
Dim MyObject As Sample ' Declared only as Sample object.
Declarar tipos de objeto específicos fornece verificação automática de tipos, código mais rápido e legibilidade melhorada.
Atribuir uma variável de objeto a um objeto
Utilize a instrução Set para atribuir um objeto a uma variável de objeto. Pode atribuir uma expressão de objeto ou Nada. Por exemplo, as seguintes atribuições de variáveis de objeto são válidas.
Set MyObject = YourObject ' Assign object reference.
Set MyObject = Nothing ' Discontinue association.
Pode combinar a declaração de uma variável de objeto com a atribuição de um objeto ao mesmo através da instrução Novopalavra-chave com a instrução Set. Por exemplo:
Set MyObject = New Object ' Create and Assign
Definir uma variável de objeto igual a Nada descontinua a associação da variável de objeto com qualquer objeto específico. Isto impede-o de alterar acidentalmente o objeto alterando a variável. Uma variável de objeto é sempre definida como Nada depois de fechar o objeto associado para que possa testar se a variável de objeto aponta para um objeto válido. Por exemplo:
If Not MyObject Is Nothing Then
' Variable refers to valid object.
. . .
End If
É claro que este teste nunca pode determinar com certeza absoluta se um utilizador fechou a aplicação que contém o objeto ao qual a variável de objeto se refere.
Veja a instância atual de um objeto
Utilize o palavra-chave Me para fazer referência à instância atual do objeto onde o código está em execução. Todos os procedimentos associados ao objeto atual têm acesso ao objeto referido como Eu. Utilizar Eu é particularmente útil para transmitir informações sobre a instância atual de um objeto para um procedimento noutro módulo. Por exemplo, suponha que tem o seguinte procedimento num módulo:
Sub ChangeObjectColor(MyObjectName As Object)
MyObjectName.BackColor = RGB(Rnd * 256, Rnd * 256, Rnd * 256)
End Sub
Pode chamar o procedimento e transmitir a instância atual do objeto como um argumento com a seguinte instrução:
ChangeObjectColor Me
Confira também
Suporte e comentários
Tem dúvidas ou quer enviar comentários sobre o VBA para Office ou sobre esta documentação? Confira Suporte e comentários sobre o VBA para Office a fim de obter orientação sobre as maneiras pelas quais você pode receber suporte e fornecer comentários.