VarType (función)
Devuelve un entero que indica el subtipo de una variable o el tipo de la propiedad predeterminada de un objeto.
Sintaxis
VarType(varname)
El argumentovarname necesario es un variant que contiene cualquier variable excepto una variable de un tipo definido por el usuario.
Valores devueltos
Se devuelve una de las constantes siguientes o la suma de un número de ellas.
Constante | Valor | Descripción |
---|---|---|
vbEmpty | 0 | Empty (no inicializado) |
vbNull | 1 | Null (datos no válidos) |
vbInteger | 2 | Integer |
vbLong | 3 | Entero largo |
vbSingle | 4 | Número de punto flotante de precisión sencilla |
vbDouble | 5 | Número de punto flotante de doble precisión |
vbCurrency | 6 | Valor de divisa |
vbDate | 7 | Valor de fecha |
vbString | 8 | String |
vbObject | 9 | Objeto |
vbError | 10 | Valor de error |
vbBoolean | 11 | Valor booleano |
vbVariant | 12 | Variante (usado solo con matrices de variantes) |
vbDataObject | 13 | Un objeto de acceso a datos |
vbDecimal | 14 | Valor decimal |
vbByte | 17 | Valor de bytes |
vbLongLong | 20 | Entero longlong (válido solo en plataformas de 64 bits) |
vbUserDefinedType | 36 | Variantes que contienen tipos definidos por el usuario |
vbArray | 8192 | Matriz (siempre agregada a otra constante cuando la devuelve esta función) |
Nota:
Estas constantes están especificadas por Visual Basic para aplicaciones. Los nombres se pueden usar en cualquier parte del código en lugar de los valores reales.
Comentarios
Si se pasa un objeto y tiene una propiedad predeterminada, VarType(object) devuelve el tipo de la propiedad predeterminada del objeto.
La función VarType nunca devuelve el valor para vbArray por sí mismo. Siempre se agrega a otro valor para indicar una matriz de un tipo determinado. Por ejemplo, el valor devuelto para una matriz de enteros se calcula como vbInteger + vbArray o 8194.
La constante vbVariant solo se devuelve junto con vbArray para indicar que el argumento de la función VarType es una matriz de tipo Variant.
Ejemplo
En este ejemplo se usa la función VarType para determinar los subtipos de variables diferentes y, en un caso, el tipo de la propiedad predeterminada de un 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`.
Vea también
Soporte técnico y comentarios
¿Tiene preguntas o comentarios sobre VBA para Office o esta documentación? Vea Soporte técnico y comentarios sobre VBA para Office para obtener ayuda sobre las formas en las que puede recibir soporte técnico y enviar comentarios.