¿Cómo usar la función VarType en VBA?

La función `VarType` en VBA se utiliza para identificar el tipo de datos de una variable. Devuelve un valor que indica el tipo de datos de la variable pasada como argumento. Esto puede ser útil para realizar comprobaciones dinámicas de tipos de datos en tiempo de ejecución. Aquí te explico cómo usarla y algunos ejemplos de uso:

Sintaxis

VarType(variable)

Donde `variable` es la variable cuyo tipo deseas determinar.

Valores Devueltos

La función `VarType` devuelve un entero que corresponde a un tipo de datos específico. Algunos de los valores devueltos comunes son:

  • `0`: Empty (Variable no inicializada)
  • `1`: Null (Sin datos válidos)
  • `2`: Integer
  • `3`: Long
  • `4`: Single
  • `5`: Double
  • `6`: Currency
  • `7`: Date
  • `8`: String
  • `9`: Object
  • `10`: Error
  • `11`: Boolean
  • `12`: Variant
  • `13`: DataObject
  • `17`: Byte
  • `8192`: Array (Se indica con un OR bit a bit con el valor del tipo, por ejemplo, 8204 para un array de Integer)

Ejemplo de Uso

Sub EjemploVarType()
    Dim miVariable As Variant
    Dim tipoVariable As Integer
    
    miVariable = 10
    tipoVariable = VarType(miVariable)
    Debug.Print "El tipo de miVariable es: "; tipoVariable  ' Debería imprimir 2 (Integer)
    
    miVariable = "Hola"
    tipoVariable = VarType(miVariable)
    Debug.Print "El tipo de miVariable es: "; tipoVariable  ' Debería imprimir 8 (String)
    
    miVariable = Now
    tipoVariable = VarType(miVariable)
    Debug.Print "El tipo de miVariable es: "; tipoVariable  ' Debería imprimir 7 (Date)
    
    miVariable = Array(1, 2, 3)
    tipoVariable = VarType(miVariable)
    Debug.Print "El tipo de miVariable es: "; tipoVariable  ' Debería imprimir 8204 (Array de Integer, si se interpreta el array como de Integer)
End Sub

Este código declara una variable como `Variant` y cambia su valor varias veces, usando luego la función `VarType` para determinar el tipo de datos actual de la variable. Los resultados se imprimen en la ventana de depuración.

Recuerda que `VarType` es especialmente útil cuando trabajas con datos que pueden cambiar de tipo en tiempo de ejecución, ya que te permite manejar esos cambios de manera adecuada en tu lógica de código.

Unlock Your Potential

Excel

Basic - Advanced

Access

Access Basic - Advanced

Power BI

Power BI Basic - Advanced

Help us grow the project