VBA TimeValue

El valor de tiempo en VBA es una función incorporada que también se clasifica en la función de fecha y hora en VBA, esta función, como sugiere el nombre, nos da el valor numérico de la fecha proporcionada como argumento, toma un solo argumento que es la fecha y devuelve el valor numérico del argumento.

¿Qué hace la función de valor temporal en VBA?

La función de valor de tiempo en VBA Excel devuelve la parte del valor de tiempo de la fecha y hora completas. La fecha y la hora se almacenan como números de serie en Excel. El número de serie representa la FECHA y el decimal representa la hora. Usando la función TimeValue podemos obtener solo el número de serie de la hora, es decir, el número decimal.

Sintaxis de la función TimeValue de VBA

La sintaxis de la función VBA TimeValue es la siguiente.

Como dijimos, la función TimeValue devuelve la parte del número de serie de la fecha dada que se almacena como un valor de texto. El tiempo no es más que el tiempo real que buscamos para obtener el número de serie. Recuerde que Time Value solo puede obtener el número de serie de la hora que se almacena como texto, no como TIME.

Ejemplos de función TimeValue con Excel VBA

A continuación se muestran los ejemplos de la función TimeValue de VBA.

Puede descargar esta plantilla de función VBA TimeValue aquí - Plantilla de función VBA TimeValue

Ejemplo n. ° 1 de TimeValue de VBA

Ahora, mire el ejemplo simple de la función VBA TimeValue.

Código:

 Sub TIMEVALUE_Function_Example1 () 'Convertir la cadena de entrada dada en una hora válida y mostrarla en la pantalla' Declaración de variable Dim MyTime As Date 'Asignar hora a una variable MyTime = TimeValue ("28-05-2019 16:50:45")' Muestra la salida en la pantalla MsgBox "La hora actual es:" & MyTime, vbInformation, "Función VBA TIMEVALUE" End Sub 

Lo primero que he declarado la variable "MyTime" como Fecha.

 Atenuar MyTime como fecha 

Luego le he asignado el valor a la variable aplicando TimeValue.

MyTime = TimeValue ("28-05-2019 16:50:45")

Luego, en el cuadro de mensaje, he asignado el resultado variable.

MsgBox "La hora suministrada es:" & MyTime, vbInformation, "Función TIMEVALUE".

Si ejecuto el código usando la tecla F5 o manualmente, obtendremos el resultado de la siguiente manera.

Ejemplo 2 de VBA TimeValue

Para el mismo código, declararé la variable VBA como "Doble".

Código:

 Sub TIMEVALUE_Function_Example1 () 'Convertir la cadena de entrada dada en una hora válida y mostrarla en la pantalla' Declaración de variable Dim MyTime As Double 'Asignar tiempo a una variable MyTime = TimeValue ("28-05-2019 16:50:45")' Mostrar la salida en la pantalla MsgBox "La hora actual es:" & MyTime, vbInformation, "Función VBA TIMEVALUE" 

Ahora, si ejecuto el código VBA manualmente o presionando la tecla F5, mostrará el número de serie parte del tiempo 16:50:45.

Para su mejor comprensión, primero ingresaré los números dados por el cuadro de mensaje de VBA en una de las celdas.

Ahora aplicaré el formato de hora para comprobar el resultado exacto.

Cuando lo convierte a un formato de hora, puede ver la hora exacta.

Ejemplo 3 de VBA TimeValue

Ahora, mire los datos a continuación.

Tenemos datos y tiempo juntos desde las celdas A1 hasta A14. Para la segunda columna, necesitamos extraer solo el valor de tiempo. Dado que tenemos más de una celda para tratar, necesitamos emplear bucles para realizar el mismo conjunto de tareas para todas las celdas.

Tenemos datos de la 1ª celda a la 14ª, por lo que nuestro ciclo debería ejecutarse 14 veces. Necesitamos usar el bucle FOR NEXT en VBA para mencionar el límite inferior y el límite superior. El siguiente código es el código ya escrito para extraer el valor de tiempo de la combinación de fecha y hora.

Código:

 Sub TimeValue_Example3 () Dim k As Integer For k = 1 To 14 Cells (k, 2) .Value = TimeValue (Cells (k, 1) .Value) Next k End Sub 

Cuando ejecutemos el código obtendremos los valores como los siguientes.

Si desea ver la hora, aplique el formato TIME.

Entonces, así es como funciona la función TIME VALUE en VBA y Excel.