Instrução Property Get

Declara o nome, os argumentos e o código que formam o corpo de um procedimentode Propriedade, que obtém o valor de uma propriedade.

Sintaxe

[ Público | Privada | Amigo ] [ Estático ] Propriedade Obternome [ (arglist) ] [ Comotipo ]
[instruções]
[ nome=expressão ]
[ Propriedade Exit ]
[instruções]
[ nome=expressão ]
End Property

A sintaxe da instrução Property Get tem estas partes:

Sair Descrição
Public Opcional. Indica que o procedimento Property Get está acessível a todos os outros procedimentos em todos os módulos. Se usado em um módulo que contém uma instrução Option Private, o procedimento não está disponível fora do projeto.
Private Opcional. Indica que o procedimento Property Get está acessível apenas a outros procedimentos no módulo em que ele é declarado.
Amigo Opcional. Usado somente em um módulo de classe. Indica que o procedimento Property Get está visível em todo o projeto, mas não visível para um controlador de uma instância de um objeto.
Static Opcional. Indica que as variáveis locais do procedimento Property Get são preservadas entre chamadas. O atributo estático não afeta variáveis declaradas fora do procedimento Property Get , mesmo que sejam usadas no procedimento.
name Obrigatório. Nome do procedimento Property Get ; segue convenções de nomenclatura de variável padrão, exceto que o nome pode ser o mesmo que um procedimento Property Let ou Property Set no mesmo módulo.
listadeargumentos Opcional. Lista de variáveis que representam argumentos que são passados para o procedimento Property Get quando ele é chamado. Vários argumentos são separados por vírgulas. O nome e o tipo de dados de cada argumento em um procedimento property get devem ser os mesmos que o argumento correspondente em um procedimento Property Let (se houver).
type Opcional. Tipo de dados do valor retornado pelo procedimento Property Get; pode ser Byte, Boolean, Integer, Long, Conversor de Moedas, Single, Double, Decimal (não compatível atualmente), Date, String (exceto comprimento fixo), Objeto, Variant, tipo definido pelo usuário e Matrizes.

O tipo de retorno de um procedimento Property Get deve ser o mesmo tipo de dados que o último (ou às vezes o único) argumento em um procedimento property let correspondente (se existir) que define o valor atribuído à propriedade no lado direito de uma expressão.
instruções Opcional. Qualquer grupo de instruções a serem executadas no corpo do procedimento Property Get .
expression Opcional. Valor da propriedade retornada pelo procedimento definido pela instrução Property Get .

O argumento listadeargumentos tem as seguintes sintaxe e partes:

[ Optional ] [ ByVal | ByRef ] [ ParamArray ] varname [()] [ Comotype ] [ =defaultValue ]

Sair Descrição
Opcional Opcional. Indica se um argumento não é obrigatório. Se for usado, todos os argumentos subsequentes em arglist também deverão ser opcionais e declarados usando a palavra-chave Optional.
ByVal Opcional. Indica se o argumento será passado por valor.
ByRef Opcional. Indica se o argumento será passado por referência. ByRef é o padrão no VBA diferentemente do Visual Basic .NET.
ParamArray Opcional. Usado apenas como o último argumento no arglist para indicar que o argumento final é uma matriz opcional de elementos Variant . A palavra-chave ParamArray permite que você forneça um número aleatório de argumentos. Ele pode não ser usado com ByVal, ByRef ou Opcional.
nomedavariável Obrigatório. Nome da variável que representa o argumento passado; segue as convenções de nomenclatura de variável padrão.
tipo Opcional. Tipo de dados do argumento passado para o procedimento; pode ser Byte, Boolean, Integer, Long, Conversor de Moedas, Single, Double, Decimal (não suportado atualmente), Date, String (somente comprimento de variável), Objeto, Variant ou um tipo de objeto específico. Se o parâmetro não for Optional, um tipo definido pelo usuário também poderá ser especificado.
valorpadrão Opcional. Qualquer expressão constante ou constante. Válido somente para parâmetros Optional. Se o tipo for um Objeto, um valor padrão explícito só poderá ser Nothing.

Comentários

Se não for especificado explicitamente usando procedimentos públicos, privados ou amigos, os procedimentos de propriedade serão públicos por padrão. Se estático não for usado, o valor das variáveis locais não será preservado entre chamadas.

A palavra-chave Friend só pode ser usada em módulos de classe. No entanto, procedimentos Friend podem ser acessados por procedimentos em qualquer módulo de um projeto. Um procedimento Friend não aparece na biblioteca de tipos de sua classe pai, e um procedimento Friend não ser pode associado tardiamente.

Todo código executável deve estar em procedimentos. Você não pode definir um procedimento Property Get dentro de outra propriedade, sub ou procedimento de função .

A instrução Exit Property causa uma saída imediata de um procedimento de Obtenção de Propriedade . A execução do programa continua com a instrução seguindo a instrução que chamou o procedimento Property Get . Qualquer número de instruções da Propriedade Exit pode aparecer em qualquer lugar em um procedimento de Obtenção de Propriedade .

Como um procedimento Sub e Property Let , um procedimento Property Get é um procedimento separado que pode levar argumentos, executar uma série de instruções e alterar os valores de seus argumentos. No entanto, ao contrário de um procedimento Sub ou Property Let , você pode usar um procedimento Property Get no lado direito de uma expressão da mesma forma que você usa uma Função ou um nome de propriedade quando deseja retornar o valor de uma propriedade.

Exemplo

Este exemplo usa a instrução Property Get para definir um procedimento de propriedade que obtém o valor de uma propriedade. A propriedade identifica a cor atual de uma caneta como uma cadeia de caracteres.

Dim CurrentColor As Integer 
Const BLACK = 0, RED = 1, GREEN = 2, BLUE = 3 
 
' Returns the current color of the pen as a string. 
Property Get PenColor() As String 
 Select Case CurrentColor 
 Case RED 
 PenColor = "Red" 
 Case GREEN 
 PenColor = "Green" 
 Case BLUE 
 PenColor = "Blue" 
 End Select 
End Property 
 
' The following code gets the color of the pen 
' calling the Property Get procedure. 
ColorName = PenColor 

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.