VBA TimeValue | Com s'utilitza la funció de valor de temps a Excel VBA?

El valor de temps a VBA és una funció incorporada que també es classifica a la funció de data i hora de VBA, aquesta funció, tal com el seu nom indica, ens proporciona el valor numèric de la data proporcionada com a argument, pren un únic argument que és la data i retorna el valor numèric de l'argument.

Què fa la funció de valor temporal a VBA?

La funció Valor de temps a VBA Excel retorna la part del valor de temps de la data i l'hora completes. La data i l'hora s'emmagatzemen com a números de sèrie a Excel. El número de sèrie representa la DATA i el decimal representa l’hora. Mitjançant la funció TimeValue només podem obtenir el número de sèrie de temps, és a dir, el nombre decimal.

Sintaxi de la funció VBA TimeValue

La sintaxi de la funció VBA TimeValue és la següent.

Com hem dit, la funció TimeValue retorna la part del número de sèrie de la data donada que s'emmagatzema com a valor de text. El temps no és res més que l’hora real que volem obtenir el número de sèrie. Recordeu que el valor de temps només pot obtenir el número de sèrie des de l’hora emmagatzemada com a text, no com a TIME.

Exemples de funció TimeValue amb Excel VBA

A continuació es mostren els exemples de la funció VBA TimeValue.

Podeu descarregar aquesta plantilla de funció VBA TimeValue aquí - Plantilla de funció VBA TimeValue

Exemple número 1 de VBA TimeValue

Ara mireu l’exemple senzill de la funció VBA TimeValue.

Codi:

 Sub TIMEVALUE_Function_Example1 () 'Converteix la cadena d'entrada donada a una hora vàlida i mostra-la a la pantalla' Declaració de variable Dim MyTime As Date 'Assigna l'hora a una variable MyTime = TimeValue ("28-05-2019 16:50:45")' Mostra la sortida a la pantalla MsgBox "L'hora actual és:" & MyTime, vbInformation, "Funció VBA TIMEVALUE" End Sub 

Primer que he declarat la variable "El meu temps" com Data.

 Dismineix MyTime com a data 

Després he assignat el valor a la variable aplicant TimeValue.

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

Després, al quadre de missatges, he assignat el resultat variable.

MsgBox "El temps subministrat és:" & MyTime, vbInformation, "Funció TIMEVALUE".

Si executo el codi amb la tecla F5 o manualment, obtindrem el resultat de la manera següent.

Exemple número 2 de VBA TimeValue

Pel mateix codi, declararé la variable VBA com a "Doble".

Codi:

 Sub TIMEVALUE_Function_Example1 () 'Converteix la cadena d'entrada donada a una hora vàlida i visualitza a la pantalla' Declaració de variable Dim MyTime As Double 'Assigna el temps a una variable MyTime = TimeValue ("28-05-2019 16:50:45")' Mostra la sortida a la pantalla MsgBox "L'hora actual és:" & MyTime, vbInformation, "Funció VBA TIMEVALUE" End Sub 

Ara, si executo el codi VBA manualment o prement la tecla F5, es mostrarà el número de sèrie part del temps 16:50:45.

Per a una millor comprensió, primer introduiré els números que dóna el quadre de missatge VBA a una de les cel·les.

Ara aplicaré el format d’hora per comprovar el resultat exacte.

Quan el converteix en un format d’hora, podeu veure l’hora exacta.

Exemple VBA TimeValue núm. 3

Ara mireu les dades següents.

Tenim dades i temps junts des de les cel·les A1 fins a A14. Per a la segona columna, només hem d’extreure el valor de temps. Com que tenim més d'una cel·la a la qual hem de tractar, hem d'utilitzar bucles per realitzar el mateix conjunt de tasques per a totes les cel·les.

Tenim dades de la primera cel·la a la 14a cel·la, de manera que el nostre bucle hauria d’executar-se 14 vegades. Hem d’utilitzar el bucle FOR NEXT a VBA per esmentar el límit inferior i el límit superior. El codi següent és el codi ja escrit per extreure el valor de l'hora de la combinació de data i hora.

Codi:

 Sub TimeValue_Example3 () Dim k Com enter Per a k = 1 a 14 cel·les (k, 2). Valor = TimeValue (Cel·les (k, 1). Valor) Següent k Final sub 

Quan executem el codi, obtindrem els valors com els següents.

Si voleu veure l'hora, apliqueu-hi el format TIME.

Per tant, així és com funciona la funció TIME VALUE a VBA i Excel.