VBA TimeValue

Time Value in VBA è una funzione incorporata che è anche classificata sotto la funzione data e ora in VBA, questa funzione, come suggerisce il nome, ci fornisce il valore numerico della data fornita come argomento, richiede un singolo argomento che è la data e restituisce il valore numerico dall'argomento.

Cosa fa la funzione Time Value in VBA?

La funzione Valore temporale in VBA Excel restituisce la parte del valore temporale dalla data e dall'ora complete. La data e l'ora vengono memorizzate come numeri di serie in Excel. Il numero di serie rappresenta la DATA e il decimale rappresenta l'ora. Utilizzando la funzione TimeValue possiamo ottenere solo il numero di serie temporale, ovvero il numero decimale.

Sintassi della funzione TimeValue VBA

La sintassi della funzione VBA TimeValue è la seguente.

Come abbiamo detto, la funzione TimeValue restituisce la parte del numero di serie della data specificata che viene memorizzata come valore di testo. Il tempo non è altro che il tempo effettivo che stiamo cercando di ottenere il numero di serie. Ricorda che il valore temporale può ottenere il numero di serie solo dall'ora memorizzata come testo, non come ORA.

Esempi di funzione TimeValue con Excel VBA

Di seguito sono riportati gli esempi della funzione TimeValue VBA.

È possibile scaricare questo modello di funzione TimeValue VBA qui - Modello di funzione TimeValue VBA

VBA TimeValue Esempio n. 1

Ora, guarda il semplice esempio della funzione VBA TimeValue.

Codice:

 Sub TIMEVALUE_Function_Example1 () "Converti la stringa di input data in un'ora valida e visualizza sullo schermo" Dichiarazione variabile Dim MyTime As Date "Assegna ora a una variabile MyTime = TimeValue (" 28-05-2019 16:50:45 ")" Visualizza l'output sullo schermo MsgBox "Current Time is:" & MyTime, vbInformation, "VBA TIMEVALUE Function" End Sub 

Per prima cosa ho dichiarato la variabile "MyTime" come Date.

 Dim MyTime As Date 

Quindi ho assegnato il valore alla variabile applicando TimeValue.

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

Quindi nella finestra del messaggio, ho assegnato il risultato della variabile.

MsgBox "L'ora fornita è:" & MyTime, vbInformation, "Funzione TIMEVALUE".

Se eseguo il codice usando il tasto F5 o manualmente, otterremo il risultato come segue.

VBA TimeValue Esempio n. 2

Per lo stesso codice, dichiarerò la variabile VBA come "Double".

Codice:

 Sub TIMEVALUE_Function_Example1 () "Converti la stringa di input data in un orario valido e visualizza sullo schermo" Dichiarazione variabile Dim MyTime As Double "Assegna tempo a una variabile MyTime = TimeValue (" 28-05-2019 16:50:45 ")" Visualizza l'output sullo schermo MsgBox "Current Time is:" & MyTime, vbInformation, "VBA TIMEVALUE Function" End Sub 

Ora se eseguo il codice VBA manualmente o premendo il tasto F5, verrà visualizzato il numero di serie parte del tempo 16:50:45.

Per una migliore comprensione, inserirò prima i numeri forniti dalla finestra del messaggio VBA in una delle celle.

Ora applicherò il formato dell'ora per controllare il risultato esatto.

Quando lo converti in un formato ora, puoi vedere l'ora esatta.

VBA TimeValue Esempio n. 3

Ora, guarda i dati seguenti.

Abbiamo dati e tempo insieme dalle celle A1 a A14. Per la seconda colonna, dobbiamo estrarre solo il valore temporale. Poiché abbiamo più di una cella da gestire, dobbiamo impiegare i cicli per eseguire lo stesso insieme di attività per tutte le celle.

Abbiamo dati dalla prima cella alla 14a cella, quindi il nostro ciclo dovrebbe essere eseguito per 14 volte. Dobbiamo usare il ciclo FOR NEXT in VBA per menzionare il limite inferiore e il limite superiore. Il codice sottostante è il codice già scritto per estrarre il valore dell'ora dalla combinazione di data e ora.

Codice:

 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 

Quando eseguiamo il codice otterremo i valori come di seguito.

Se desideri vedere l'ora, applica il formato TIME.

Quindi, questo è il modo in cui funziona la funzione TIME VALUE in VBA ed Excel.