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

La función `TimeValue` en VBA (Visual Basic for Applications) se utiliza para convertir una cadena de texto que representa una hora en un valor de tipo Date que contiene solo la parte de la hora. Esta función es útil cuando necesitas trabajar con tiempos de manera más precisa o realizar cálculos con ellos en aplicaciones de Excel, Access u otras herramientas que soporten VBA.

A continuación, te muestro cómo usar `TimeValue` en VBA:

Sintaxis

TimeValue(time)
  • time: Una expresión de cadena que representa una hora válida entre “00:00:00” y “23:59:59”.

Ejemplo de uso

Aquí tienes un ejemplo simple para ilustrar cómo usar `TimeValue` en un macro de Excel:

Sub ConvertirHora()
    Dim cadenaHora As String
    Dim valorHora As Date
    
    ' Asignar una cadena de texto que representa una hora
    cadenaHora = "15:30:00"
    
    ' Convertir la cadena en un valor de tipo Date que solo incluye la hora
    valorHora = TimeValue(cadenaHora)
    
    ' Imprimir el resultado en la consola inmediata de VBA
    Debug.Print "La hora convertida es: " & valorHora
End Sub

Notas importantes

  • La función `TimeValue` solo toma en cuenta la parte de la hora de la cadena de texto y descarta cualquier información sobre la fecha.
  • Si pasas una cadena que no representa una hora válida, VBA generará un error. Por lo tanto, es buena práctica asegurarte de que la cadena sea una representación válida de una hora antes de intentar convertirla.
  • Puedes usar directamente el valor devuelto por `TimeValue` en cálculos de tiempos o al asignar tiempos a celdas en Excel.

Este es un ejemplo básico, pero puedes adaptar la fórmula para trabajar con diferentes accesorios o sistemas que utilicen VBA, como Access o Word.

Unlock Your Potential

Excel

Basic - Advanced

Access

Access Basic - Advanced

Power BI

Power BI Basic - Advanced

Help us grow the project