1 1 1 1 1 1 1 1 1 1 Rating 0.00 (0 Votes)

Problemstellung:
In MS-Access ist es mit Bordmitteln nicht möglich Zeiten über 24 Stunden zu berechnen
In dieser Bsp-DB möchte ich zeigen wie es trotzdem geht.

Voraussetzungen:
Das Bsp ist ab A2007 lauffähig.

Funktionsweise:
Wenn in MS-Access Zeiten vorliegen und diese sollen addiert werden kommt kein richtiges Ergebnis raus.

Das Ergebnis sollte 43:15 Stunden sein aber da Zeiten über 24 Stunden nicht im Format hh:nn anzeigt
wird nur der Rest vom vielfachen von 24 Stunden angezeigt.

Der Trick zur Berechnung besteht nun darin die Zeiten in Minuten umzurechnen.
Das übernimmt diese Funktion:

Public Function GetMin(vTime As Variant) As Long
' Zeitformat in Minuten umrechnen
    Dim nPos As Long

    vTime = CStr(vTime)
    nPos = InStr(vTime, ":")
    If nPos > 0 Then
        GetMin = Val(Left$(vTime, nPos - 1)) * 60 + Val(Mid$(vTime, nPos + 1))
    Else
        GetMin = Val(vTime)
    End If
End Function

Die Umrechnung der Minuten in das Format hh:nn übernimmt dann diese Funktion:

Public Function CalcTime(lngTime As Long) As String
'Minuten in Zeitformat hh:mm umrechnen
'auch über 24h und auch negative Zeiten
    Dim nMin As Long
    Dim nStd As Long
    
    If lngTime >= 0 Then
        nStd = Int(lngTime / 60)
        nMin = lngTime - (nStd * 60)
        CalcTime = Format$(nStd, "00") & ":" & Format(nMin, "00")
    Else
        lngTime = lngTime * -1
        nStd = Int(lngTime / 60)
        nMin = lngTime - (nStd * 60)
        CalcTime = "-" & Format$(nStd, "00") & ":" & Format(nMin, "00")
    End If
End Function

Das Ganze geht auch mit negativen Zeiten (s.Formular "frm_AZ2")
Hier wird die Differenz von Sollzeit und Istzeit berechnet.
Im Bsp ist die Differenz negativ. Dieser Negativwert lässt sich auch im Format "-hh:nn" anzeigen.

 

 

Dateien:

Berechnen von Zeiten über 24 Stunden

ab A2007

Die Zip-Datei enthält eine Version ab A2007

Datum 17.09.2018
Dateigröße 29.02 KB
Download 11

Ähnliche Artikel

Kommentar schreiben

Sicherheitscode
Aktualisieren

Login Form

Neueste Artikel

SQL zu VBA Konverter
26. Oktober 2018
Problemstellung: Gibt es eine Möglichkeit SQL-Code einer Abfrage so zu konvertieren das der Code in VBA genutzt werden kann? Lösung: Bis Access 2010 gibt das Tool "SmartTools SQL aus Abfragen 3.0"...
1.png2.png1.png2.png4.png9.png2.png
Heute0
Gestern83
Diese Woche0
Dieser Monat1292
Total1212492

  • IP: 54.227.186.112
  • Browser: Unknown
  • Version:
  • OS: Unknown

Online

1
Online

17. Dezember 2018

Letzte Kommentare

  • Trusted Locations Manager

    Tommy Admin 13.07.2018 13:06
    RE: Trusted Locations Manager
    Hallo Matthias, aus Ermangelung einer 64bit Version kann ich das leider nicht prüfen. Tut mir leid. Gruss ...

    Weiterlesen...

     
  • Trusted Locations Manager

    Matthias 13.07.2018 06:48
    Funktioniert nicht
    Habe gerade den TL-Manager installiert. Nach dem Start sagt er mir, dass es kein Office erkennen ...

    Weiterlesen...