Clever-Excel-Forum

Normale Version: Bug in OBERGRENZE-Formel?
Du siehst gerade eine vereinfachte Darstellung unserer Inhalte. Normale Ansicht mit richtiger Formatierung.
Seiten: 1 2
Guten Morgen zusammen,

ich habe bei einer Berechnung von Reisezeiten ein Problem. Momentan kann ich nicht sagen, ob dies ein Microsoft-Bug ist oder ob ich irgendwo einen Fehler drin habe. Ich kann die Datei leider nicht hochladen. Es wird Office 2029 benutzt.

Für die Mitarbeiter des Kundendienstes soll eine Reisezeiterfassung erfolgen. Es soll immer auf die nächsten 15 Minuten aufgerundet werden.
Zur Berechnung habe ich die Formel OBERGRENZE genommen.
Dazu gibt es eine einfache Tabelle.

Spalte A    Spalte B    Spalte C    Spalte D          Spalte E
Ort           Abfahrt     Ankunft     Dauer (in h)    gesamte Reisezeit
Punkt 1    09:15       10:00        00:45
Punkt 2    11:00       11:15        00:15             02:15 h
Punkt 3    13:00       14:00        01:00

Die Spalten B, C und D haben folgende Zellformatierung: Benutzerdefiniert: hh:mm
Die Spalte E hat folgende Zellformatierung: Benutzerdefiniert: [h]:mm "h"

In Spalte E steht folgende Fomel:
Code:
=(OBERGRENZE(SUMME(D2:D4);"0:15"))

Das Problem ist jetzt folgendes.
Wenn ich die Zeiten eintrage, egal ob gerade Werte (09:00) oder ungerade Werte (10:07) rundet Excel immer korrekt auf.
Sobald ich aber in die Range von 02:00h bis 02:30h in Spalte E komme, addiert er einfach 15 Minuten oben drauf.
Wenn die Gesamtsumme der Spalte D bei 1, 3, 4 oder 5 Stunden ist, so addiert er keine 15 Minuten. Nur bei 02:00h und 02:30h.

In meinem Beispiel oben ist aus Spalte D klar erkennbar, dass die Gesamtzeit 2 Stunden glatt beträgt. Wenn man nun ein wenig mit den Zeitwerten spielt (z.B. Zelle D4 Minuten dazu oder wegrechnen), so macht Excel alles richtig. Komme ich aber in die Range von 02:00h bis 02:30h rechnet er falsch.

Vielleicht könnt ihr das mal testen ob ihr den gleichen Bug habt.

Vielen Dank.

Schönen Gruß

Mav
Ich muss dich enttäuschen: Du gehörst nicht zu den Helden, die einen Bug gefunden haben. 

Die Funktion arbeitet normal - im Rahmen der geltenden Regeln für den Umgang mit Zahlen. 

https://learn.microsoft.com/de-de/office...ate-result

Uhrzeiten sind besonders anfällig: Da macht es mitunter schon einen Unterschied, ob diese „hart“ (von Hand) eingegeben oder berechnet wurden.
Hallo Mav,

mit gerundeter Summe dann so:

=(OBERGRENZE(RUNDEN(SUMME(D2:D4);15);"0:15"))

Gruß Uwe
Guten Morgen,

ich wollte auf keinen Fall ein Held sein.

Ihr seid für mich die Helden, denn ihr habt das Problem sofort erkannt. Das Uhrzeiten so anfällig sind war mir nicht bewusst.
Ich fand es halt erstaunlich, dass der Fehler nur in dieser Range auftaucht und sonst nicht.

Mit der Ergänzung der Funktion RUNDEN sollte es jetzt hoffentlich funktionieren.

Besten Dank für die Hilfe.

Schöne Grüße
(01.03.2024, 09:18)Maverick1909 schrieb: [ -> ]Das Uhrzeiten so anfällig sind war mir nicht bewusst.
...vor allem sieht man es dort nicht, da die kleinste Einheit i. d. R. die Minute oder Sekunde ist.

Mach einen einfachen Test:
Schreibe in A1 und B1 jeweils 10:00 
In A2 trägst du die Formel =A1+1/24/4 ein, du addierst also 15 Minuten, Formel runterkopieren bis Zeile 10
In B2 trägst du von Hand 10:15 ein, markierst B1 und B2 und ziehst nach unten bis Zeile 10, erhältst also augenscheinlich die gleiche Zeitreihe. 

In C1:C10 trägst du die Formel ein: A1=B1. 

Bei 11:30 Uhr erhältst du FALSCH. Die "gezogene" Zeit entspricht also nicht mehr der berechneten Zeit.
Habe gerade deinen Test gemacht. Das ist ja wahnsinn. Erklärt vielleicht auch meine Problematik in den Excel-Sheet.

Ich habe mit der neuen Formel jetzt doch wieder ein falsche Berechnung erhalten. Mein Beispiel aus dem Initialpost wurde richtig angezeigt aber mit anderen Zeitwerten konnte ich den Fehler dann doch wieder provozieren.

Ich versuche jetzt mit einer Wenn-Formel eine Fehlermeldung zu implementieren, dass bei einer Abweichung die Meldung erscheint, dass man manuell nochmal prüfen muss.

Wie gesagt der Fehler tritt nur super selten auf, aber für diesen Fall soll dann die Fehlermeldung auftauchen.

Jetzt hänge ich aber fest und es zeigt mir das nicht richtig an. Confused

Habt ihr da vielleicht noch einen Ansatz?

Im Grunde will ich schauen ob die Differenz zwischen der Summe von Spalte D und der Berechnung aus Spalte E größer/gleich 15 Minuten ist.
Ich kann in der der Formel aber nicht >=0:15h nutzen. Müsste ich da die Differenz erst nochmal umwandeln in einer Hilfszelle?

EDIT:

Wenn ich folgende Daten eingebe, mit der neuen Formel kommt folgendes:

Spalte A Spalte B Spalte C Spalte D Spalte E
Ort Abfahrt Ankunft Dauer (in h) gesamte Reisezeit
Punkt 1 09:30 10:00 00:30
Punkt 2 11:00 11:15 00:15 02:00 h
Punkt 3 13:00 14:00 01:00

Anstelle von 01:45h kommt 02:00h raus. Sad

Die Zeiten aus dem Initialpost werden richtig angezeigt.
Du musst das mit den Zahlen richtig machen. Zuerst RUNDENst Du eine mit einem Faktor multipl. Gleitkommazahl zur Ganzzahl ... und die KÜRZENst oder OBERGRENZEst Du dann über die umgekehrte Anwendung des Faktors.
Hast du dafür evtl. ein konkretes Beispiel bzw. die einzelnen Schritte?
Brauche ich da Hiilfszellen?


Kleine Gedankenergänzung:

Habe vorhin nochmal über die Zeiteinheiten nachgedacht.
Wenn ich 09:00:00 habe und 15 Minuten dazu haben möchte, geht es dann bis 09h:14m:59s oder bis glatt 09:15:00?
Vielleicht ist das auch das Problem mit dem Aufrunden?
Verwende:

PHP-Code:
=FLOOR(SUM(D2:D4);1/96
(01.03.2024, 14:40)Maverick1909 schrieb: [ -> ]Vielleicht ist das auch das Problem mit dem Aufrunden?
Den Grund habe ich genannt und Erläuterungen verlinkt.

08:00 ist (so exakt darstellbar wie möglich) der Zeitpunkt 08:00., also der Beginn, die Sekunde 0 der 1. Minute nach 8 Uhr - weder eine Sekunde davor noch danach. 15 Minuten danach folgt die Sekunde 0 der 16. Minute nach 8, warum sollte plötzlich eine Sekunde fehlen?

Dir ist schon klar, nach Studium des Artikels, um welche Zahlendifferenzen es geht? 1 Sekunde = 1/24/60/60. Da bist du weit von den Abweichungen entfernt, um die es geht. Eine Sekunde Differenz darf es da nicht geben.

Spannend wird es beim exakten Zahlenvergleich oder eben im Grenzbereich, wobei auch hier die Differenzen <<1 Sekunde liegen. Wenn du weißt, was eine Sekunde ausmacht, weißt du auch, wie du runden musst, um sekundenscharfe Vergleiche zu ermöglichen.
Seiten: 1 2