Funzione TimeValue
Usando l'ora, i minuti e i secondi specificati - parametri passati come stringhe - calcola un valore di tempo seriale che rappresenta l'ora in forma di un singolo valore numerico. Tale valore può essere utilizzato per calcolare la differenza tra due ore.
Sintassi:
TimeValue (Text As String)
Valore restituito:
Data
Parametri:
Text (Testo): stringa che contiene l'ora da calcolare nel formato "HH:MM:SS".
Con questa funzione, potete convertire l'ora in un singolo valore con cui calcolare le differenze di tempo.
La funzione TimeValue restituisce il tipo Variant con VarType 7 (Date) e memorizza questo valore internamente come numero a doppia precisione compreso tra 0 e 0,9999999999.
A differenza delle funzioni DateSerial o DateValue, che restituiscono valori di data seriali espressi in giorni in relazione a una data fissa, i valori restituiti dalla funzione TimeValue possono essere usati per eseguire calcoli ma non possono essere valutati.
Nella funzione TimeSerial, potete passare i singoli parametri (ora, minuti, secondi) come espressioni numeriche separate. Per la funzione TimeValue, tuttavia, potete passare una stringa come parametro contenente l'ora.
Esempio:
Sub ExampleTimerValue
Dim daDT As Date
Dim a1, b1, c1, a2, b2, c2 As String
a1 = "ora iniziale"
b1 = "ora finale"
c1 = "tempo totale"
a2 = "8:34"
b2 = "18:12"
daDT = TimeValue(b2) - TimeValue(a2)
c2 = a1 & ": " & a2 & chr(13)
c2 = c2 & b1 & ": " & b2 & chr(13)
c2 = c2 & c1 & ": " & trim(Str(Hour(daDT))) & ":" & trim(Str(Minute(daDT))) & ":" & trim(Str(Second(daDT)))
MsgBox c2
End Sub