Funktion TimeValue
Erzeugt aus der Angabe von Stunde, Minute und Sekunde - Parameter, die als Zeichenketten übergeben werden - eine fortlaufende Nummer, die in einem einzigen numerischen Wert eine komplette Uhrzeit darstellt. Mit Hilfe dieser fortlaufenden Nummer können Sie Differenzen zwischen Uhrzeiten berechnen.
Syntax:
TimeValue (Text As String)
Rückgabewert:
Datum
Parameter:
Text: Ein beliebiger Zeichenkettenausdruck mit der zu berechnenden Zeitangabe im Format "HH:MM:SS".
Mit Hilfe dieser Funktion können Sie eine beliebige Uhrzeit in einen einzigen Wert umrechnen, mit dem Sie wiederum Zeitdifferenzen berechnen können.
Die Funktion TimeValue gibt den Typ Variant mit VarType 7 (Date) zurück und speichert den Wert intern als Zahl mit doppelter Genauigkeit und einem Wert zwischen 0 und 0,9999999999.
Im Gegensatz zu den Funktionen DateSerial und DateValue, deren serielle Datenwerte eine Anzahl von Tagen ab einem feststehenden Datum darstellen, können Sie mit den von TimeValue zurückgegebenen Werten zwar Berechnungen anstellen, sie jedoch nicht auswerten.
Bei der Funktion TimeSerial können Sie die einzelnen Parameter (Stunde, Minute, Sekunde) als separate numerische Ausdrücke übergeben. Bei der Funktion TimeValue übergeben Sie hingegen als Parameter eine Zeichenkette mit der Zeit.
Beispiel:
Sub ExampleTimerValue
Dim daDT As Date
Dim a1, b1, c1, a2, b2, c2 As String
a1 = "Arbeitsbeginn"
b1 = "Arbeitsende"
c1 = "Arbeitszeit"
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