Função VarType
Retorna um Inteiro indicando o subtipo de uma variável ou o tipo da propriedade padrão de um objeto.
Sintaxe
VarType(varname)
O argumentovarname necessário é uma Variant que contém qualquer variável, exceto uma variável de um tipo definido pelo usuário.
Valores de retorno
Uma das constantes a seguir ou a soma de várias delas é retornada.
Constant | Valor | Descrição |
---|---|---|
vbEmpty | 0 | Vazio (não diferenciado) |
vbNull | 1 | Nulo (sem dados válidos) |
vbInteger | 2 | Integer |
vbLong | 3 | Inteiro longo |
vbSingle | 4 | Número de ponto flutuante de precisão única |
vbDouble | 5 | Número de ponto flutuante de precisão dupla |
vbCurrency | 6 | Conversor de Moedas valor |
vbDate | 7 | Valor da data |
vbString | 8 | String |
vbObject | 9 | Objeto |
vbError | 10 | Valor de erro |
vbBoolean | 11 | Valor booliano |
vbVariant | 12 | Variant (usada apenas com matrizes de variantes) |
vbDataObject | 13 | Um objeto de acesso a dados |
vbDecimal | 14 | Valor decimal |
vbByte | 17 | Valor byte |
vbLongLong | 20 | Inteiro LongLong (válido somente em plataformas de 64 bits) |
vbUserDefinedType | 36 | Variantes que contêm tipos definidos pelo usuário |
Vbarray | 8192 | Matriz (sempre adicionada a outra constante quando retornada por essa função) |
Observação
Essas constants são especificadas pelo Visual Basic for Applications. Os nomes podem ser usados em qualquer lugar do código no lugar dos valores reais.
Comentários
Se um objeto for passado e tiver uma propriedade padrão, VarType(object) retornará o tipo da propriedade padrão do objeto.
A função VarType nunca retorna o valor para vbArray por si só. Ele sempre é adicionado a algum outro valor para indicar uma matriz de um tipo específico. Por exemplo, o valor retornado para uma matriz de inteiros é calculado como vbInteger + vbArray ou 8194.
O vbVariant constante só é retornado em conjunto com vbArray para indicar que o argumento para a função VarType é uma matriz do tipo Variant.
Exemplo
Este exemplo usa a função VarType para determinar os subtipos de diferentes variáveis e, em um caso, o tipo da propriedade padrão de um objeto.
Dim MyCheck
Dim IntVar, StrVar, DateVar, AppVar, ArrayVar
' Initialize variables.
IntVar = 459: StrVar = "Hello World": DateVar = #2/12/1969#
Set AppVar = Excel.Application
ArrayVar = Array("1st Element", "2nd Element")
' Run VarType function on different types.
MyCheck = VarType(IntVar) ' Returns 2.
MyCheck = VarType(DateVar) ' Returns 7.
MyCheck = VarType(StrVar) ' Returns 8.
MyCheck = VarType(AppVar) ' Returns 8 (vbString)
' even though AppVar is an object.
MyCheck = VarType(ArrayVar) ' Returns 8204 which is
' `8192 + 12`, the computation of
' `vbArray + vbVariant`.
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.