Função VarType
Devolve um Número Inteiro que indica o subtipo de uma variável ou o tipo de propriedade predefinida de um objeto.
Sintaxe
VarType(varname)
O argumentovarname necessário é uma Variante que contém qualquer variável, exceto uma variável de um tipo definido pelo utilizador.
Valores de retorno
É devolvida uma das seguintes constantes ou a soma de várias delas.
Constant | Valor | Descrição |
---|---|---|
vbEmpty | 0 | Vazio (não inicializado) |
vbNull | 1 | Nulo (sem dados válidos) |
vbInteger | 2 | Integer |
vbLong | 3 | Número inteiro longo |
vbSingle | 4 | Número de vírgula flutuante de precisão única |
vbDouble | 5 | Número de vírgula 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 do erro |
vbBoolean | 11 | Valor booleano |
vbVariant | 12 | Variante (utilizada apenas com matrizes de variantes) |
vbDataObject | 13 | Um objeto de acesso a dados |
vbDecimal | 14 | Valor decimal |
vbByte | 17 | Valor de byte |
vbLongLong | 20 | Número inteiro LongLong (válido apenas em plataformas de 64 bits) |
vbUserDefinedType | 36 | Variantes que contêm tipos definidos pelo utilizador |
vbArray | 8192 | Matriz (sempre adicionada a outra constante quando devolvida por esta função) |
Observação
Essas constants são especificadas pelo Visual Basic for Applications. Os nomes podem ser utilizados em qualquer parte do seu código em vez dos valores reais.
Comentários
Se um objeto for transmitido e tiver uma propriedade predefinida, VarType(objeto) devolve o tipo de propriedade predefinida do objeto.
A função VarType nunca devolve o valor para vbArray por si só. É sempre adicionado a outro valor para indicar uma matriz de um determinado tipo. Por exemplo, o valor devolvido para uma matriz de números inteiros é calculado como vbInteger + vbArray ou 8194.
O vbVariant constante só é devolvido em conjunto com vbArray para indicar que o argumento para a função VarType é uma matriz do tipo Variante.
Exemplo
Este exemplo utiliza a função VarType para determinar os subtipos de variáveis diferentes e, num caso, o tipo de propriedade predefinida 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.