Zum Inhalt springen

Empfohlene Beiträge

Geschrieben

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

Geschrieben

hallo

an der datediff funktion würd ich gar nix mehr ändern.

stattdessen würde ich noch ein paar if abfragen einbringen

wenn die ankunft nach 12 uhr ist und der ankunftstag ein anderer ist als der abfahrtstag -> wird ein tag statt die stunden dazugezählt

wenn die ankunft vor 12 uhr ist und der ankunftstag ein anderer ist als der abfahrtstag -> werden die stunden gezählt, so wie jetzt

wenn die abfahrt vor 12 uhr ist und der ankunftstag ein anderer ist als der abfahrtstag -> wird ein tag statt die stunden dazugezählt

so in etwa..

alternativ solltest du nachdenken ob du nicht einfach die abfragen machst und dann einfach die an und abfahrtszeit so normiert überschreibst, dass das richtige ergebniss raus kommt - ist wahrscheinlich geschickter

Erstelle ein Benutzerkonto oder melde Dich an, um zu kommentieren

Du musst ein Benutzerkonto haben, um einen Kommentar verfassen zu können

Benutzerkonto erstellen

Neues Benutzerkonto für unsere Community erstellen. Es ist einfach!

Neues Benutzerkonto erstellen

Anmelden

Du hast bereits ein Benutzerkonto? Melde Dich hier an.

Jetzt anmelden

Fachinformatiker.de, 2024 by SE Internet Services

fidelogo_small.png

Schicke uns eine Nachricht!

Fachinformatiker.de ist die größte IT-Community
rund um Ausbildung, Job, Weiterbildung für IT-Fachkräfte.

Fachinformatiker.de App

Download on the App Store
Get it on Google Play

Kontakt

Hier werben?
Oder sende eine E-Mail an

Social media u. feeds

Jobboard für Fachinformatiker und IT-Fachkräfte

×
×
  • Neu erstellen...