tokenring
Goto Top

Zeitdifferenz berechnen mit datediff

guten abend,

ich hab jetzt schon mehrer tutorials etc durchgeblättert aber irgendwie will es nicht klappen.
ich hab ein access forumarl mit zelle start ,zelle ende, und zelle dauer.

in der zelle dauer trage ich über den visual basic editor dann folgendes ein:

Private Sub Dauer_AfterUpdate()
Me.Dauer = DateDiff("n", Me.Start, Me.Ende) / 60
End Sub

start und ende sind als datum / zeit 24 stunden

und die zelle "dauer" ist als standardzahl fomratiert

aber es will einfach nicht gelingen die dauer zu berechnen

ich bedanke mich schon vielmals, viele grüße

Content-ID: 130986

Url: https://administrator.de/forum/zeitdifferenz-berechnen-mit-datediff-130986.html

Ausgedruckt am: 24.12.2024 um 16:12 Uhr

76109
76109 05.12.2009 um 10:34:14 Uhr
Goto Top
Hallo TokenRing!

Die Berechnung ansich funktioniert schon, wobei allerdings die Division durch 60 wenig Sinn macht, weil Du anstatt "n" für Minuten auch "h" für Stunden verwenden kannst.

Wenn Du eine Berechnung für die Dauer-Anzeige durchführen willst, dann musst Du das da machen, wo Du was eingibst bzw. wo sich was ändert und ein Erreignis ausgelöst wird. Beispiel Start und Ende flexibel verändern und in Dauer anzeigen:
Private Sub Start_AfterUpdate()
   Call DauerBerechnung
End Sub

Private Sub Ende_AfterUpdate()
   Call DauerBerechnung
End Sub

Private Sub DauerBerechnung()
   Dim d1 As String, d2 As String

   d1 = Me.Start
   d2 = Me.Ende

   If (IsDate(d1) And IsDate(d2)) Then
      Me.Dauer = DateDiff("h", d1, d2)  
   End If
End Sub

Gruß Dieter
TokenRing
TokenRing 09.12.2009 um 16:41:41 Uhr
Goto Top
wunderbar, hat funktioniert.

vielen vielen dank
76109
76109 09.12.2009 um 16:57:06 Uhr
Goto Top
Hallo TokenRing!

Yepp, gern geschehenface-wink

Gruß Dieter