Hallo,
ich habe folgenden Fall:
Ich muss eine Reisekostenabrechnung erstellen in der man folgende Dinge eingeben kann:
1. Ort
2. Abfahrtezeit + Datum
3. Ankunftszeit + Datum
Dann wird der Tagessatz automatisch berechnet. Ich habe bisher alles in Visual Basic gemacht doch ich habe Probleme bei der Berechnung der Dauer der Reise, denn es soll ein ganzer Tag gezählt werden wenn die Reise länger als 12 Stunden gedauert hat, wenn sie kürzer war sollen die STunden gezählt werden. Ich habe es wie folgt versucht:
AbT = AbTag.Value
AbM = ABMonat.Value
AbJ = AbJahr.Value
AbZ = AbZeit.Value
AnT = AnTag.Value
AnM = AnMonat.Value
AnJ = AnJahr.Value
AnZ = AnZeit.Value
Dauer = DateDiff("h", AbT + " ." + AbM + "." + AbJ + " " + AbZ, AnT + " ." + AnM + "." + AnJ + " " + AnZ)
If Dauer > 12 Then
Stunden = Dauer Mod 24
Tage = (Dauer - Stunden) / 24
Else
Tage = 0
Stunden = Dauer
End If
DAS PROBLEM: hier rechne ich die gesamten Stunden zusammen und teile sie dann in Tage und Stunden auf. Das Problem liegt am Abfahrts- und Ankunftstag. Wenn ich am Abfahrtstag vor 12 Uhr weggefahren bin, soll er einen ganzen Tag zählen umgekehrt genauso und wenn ich am Ankunftstag nach 12 Uhr zurück gekommen bin soll er genauso einen ganzen Tag rechnen. Bsp. Reise war von 01. April 06.00 Uhr bis 05. APril 16.00 Uhr. In meiner bisherigen Variante gibt er 4 Tage und 10 Stunden aus, aber es sind eigentlich 5 Tage und 0 Stunden, da der 06. April als ganzer Tag gezählt wird und nicht als Differenz zwischen 06.00 uhr und 16.00 Uhr.
Ich hoffe jemand kann mir helfen. Ich wäre wirklich sehr dankbar dafür.
Liebe Grüße,
Radina