Supportnet / Forum / Datenbanken
Zeitdifferenz mit Stunden, Minuten und Sekunden
Frage
Hallo,
könnt Ihr mir bitte helfen. Ich möchte zwei Datumswerte incl. Uhrzeit voneinander abziehen, die in einer Variablen gespeichert sind.
Bsp.:
14.07.2004 13:00:00 - 14.07.2004 15:32:23
Datum1 - Datum2
MIt der Funktion DateDiff kann ich zwar die Zeitdifferenz z.B. in Sekunden, Minuten oder Stunden ermitteln. Meine Frage: Wie kann ich folgendes Ergebnis erzielen? Wunschergebnis: 02:32:23 Stunden
Vielen Dank im Voraus für Eure Bemühungen!!!
[sup][i]@Chris,
bitte vermeide Mehrfachanfragen kurz hintereinander.[/i][/sup]
Antwort 1 von Armin
.. da wäre ich auch dran interessiert, armin
Antwort 2 von Roland
Hi,
wie wärs damit: (ungetestet)
Format(CDate(DeineSekunden/86400=, "hh:mm:ss")
cya
Roland
wie wärs damit: (ungetestet)
Format(CDate(DeineSekunden/86400=, "hh:mm:ss")
cya
Roland
Antwort 3 von El Bobbele
Moin!
Mit deinen beiden Datums-Variablen könnte das so ausssehen:
Mit deinen beiden Datums-Variablen könnte das so ausssehen:
Ergebnis = FormatDateTime(ZeitEnde - ZeitStart, vbLongTime)Antwort 4 von Chris11
Danke EL Bobbele,
Deine Antwort war echt hilfreich. Weißt Du vielleicht auch ob es in der Access-Hilfe eine List mit VBA-Funktionen, mit dem jeweiligem Stichwort gibt? Danke nochmal!!!
Deine Antwort war echt hilfreich. Weißt Du vielleicht auch ob es in der Access-Hilfe eine List mit VBA-Funktionen, mit dem jeweiligem Stichwort gibt? Danke nochmal!!!
Antwort 5 von Chris11
Noch eine Frage. Das ist schon super so, aber leider nur in einem Zeitraum von 24Stunden möglich. Kann ich das ganze auch auf mehrere Tage ausweiten? Danke im vorraus für die Bemühungen.
Antwort 6 von El Bobbele
Hallo Chris!
In der Acces-Hilfe gibt es ein Sprachverzeichnis, dort werden die Funktionen alphabetisch aufgelistet, vielleicht hilft dir die Übersicht weiter:
Access starten, Alt+F11 für VB-Editor, ?-Menü, VB-Hilfe. Im Register Inhalt "VB-Sprachverzeichnis" aufklappen, dann Funktionen usw.
Der Date-Datentyp kann keine Zeiten > 24 Std. aufnehmen. Wie du dennoch eine entsprechende Summe bilden kannst, schildern die vielen Suchergebnisse in Google und Google Groups. Dort wird das Thema ständig behandelt. :-)
In der Acces-Hilfe gibt es ein Sprachverzeichnis, dort werden die Funktionen alphabetisch aufgelistet, vielleicht hilft dir die Übersicht weiter:
Access starten, Alt+F11 für VB-Editor, ?-Menü, VB-Hilfe. Im Register Inhalt "VB-Sprachverzeichnis" aufklappen, dann Funktionen usw.
Der Date-Datentyp kann keine Zeiten > 24 Std. aufnehmen. Wie du dennoch eine entsprechende Summe bilden kannst, schildern die vielen Suchergebnisse in Google und Google Groups. Dort wird das Thema ständig behandelt. :-)
Antwort 7 von Chris11
Hallo El Bobbele,
hab jetzt noch eine andere Lösung gefunden. Innerhalb von 24Stunden wäre Deine Lösung aber am schönsten gewesen. Danke nochmal für Deine Bemühungen.
Gruß Chris
Private Sub Zeit()
Dim Zeit1 As Date
Dim Zeit2 As Date
Dim Sek As Long
Dim Min As Long
Dim Std As Long
Zeit1 = "27.03.04 04:54:45"
Zeit2 = "29.03.04 06:34:12"
Sek = DateDiff("s", Zeit1, Zeit2)
Std = Int(Sek / 3600)
Min = Int((Sek - (Std * 3600)) / 60)
Sek = Sek - ((Std * 3600) + (Min * 60))
MsgBox Std & ":" & Min & ":" & Sek
End Sub
hab jetzt noch eine andere Lösung gefunden. Innerhalb von 24Stunden wäre Deine Lösung aber am schönsten gewesen. Danke nochmal für Deine Bemühungen.
Gruß Chris
Private Sub Zeit()
Dim Zeit1 As Date
Dim Zeit2 As Date
Dim Sek As Long
Dim Min As Long
Dim Std As Long
Zeit1 = "27.03.04 04:54:45"
Zeit2 = "29.03.04 06:34:12"
Sek = DateDiff("s", Zeit1, Zeit2)
Std = Int(Sek / 3600)
Min = Int((Sek - (Std * 3600)) / 60)
Sek = Sek - ((Std * 3600) + (Min * 60))
MsgBox Std & ":" & Min & ":" & Sek
End Sub

