Vergleich von gerundeten Uhrzeiten fehlerhaft
#1
Hallo,

ich habe ein Problem mit der Rundung von Uhrzeiten. Je nach eingegebener Zeit funktioniert der Vergleich in Excel. Bitte dazu in der angehängten Datei in Zelle D13 die Uhrzeit mal auf z.B. 8:43:00 stellen, dann wird im rechten Teil keine Zahl eingetragen. Der Vergleich funktioniert offensichtlich nicht, da zwei gleiche Tabelleneinträge als ungleich erkannt werden. Uhrzeiten von 8:40:01 bis 8:50:00 funktionieren nicht, eine Entnahme eine Sekunde später oder früher wird korrekt eingetragen.

Was mache ich hier eigentlich:
Das Tabellenblatt soll die restliche (Radio-)Aktivität in einer Flasche bestimmen, aus der ich mehrmals etwas entnehme. Das Präparat im Inneren zerfällt dabei mit einer gegebenen Halbwertzeit.
Mein Ansatz ist es, einen Startwert zu einer Referenzuhrzeit zu bestimmen (8Uhr / C9 bzw. I4). Nach jeweils 10min wird die noch vorhandene Restaktivität angegeben, vermindert um den entnommenen Wert. Der Rest zerfällt weiter, bis ich wieder etwas entnehme. Ich habe die Zerfallskurve quasi in 10min-Schritten "gerastert", weil mir das einfacher für die Berechnung erschien.

Falls jemand eine Idee hat, wie sich das eleganter lösen lässt, würde ich mich auch darüber freuen. Letztendlich benötige ich nur ein Diagramm, in der ich zu jeder Uhrzeit die vorhandene Restaktivität ablesen kann, und natürlich eine Maske zur Eingabe der Startaktivität, Entnahmezeitpunkten und entnommenen Aktivitäten.


Angehängte Dateien
.xlsx   Aktivitätsberechnung5.xlsx (Größe: 25,89 KB / Downloads: 4)
Antworten Top
#2
Moin!
Ohne mir vorerst die Datei angesehen zu haben:
Wenn sich die Uhrzeiten aus Berechnungen ergeben, greift die Rechenungenauigkeit!
8:40:01 wird angezeigt (auf Sekunden per Format(!) gerundet),
vielleicht steht aber 8:40:00,999999999 in der Zelle!
Abhilfe: Runde auf eine Sekunde, welche bekanntlich ein 86.400ster Teil eines Tages ist.

Gruß Ralf
Gib einem Mann einen Fisch und du ernährst ihn für einen Tag. 
Lehre einen Mann zu fischen und du ernährst ihn für sein Leben. (Konfuzius)
Antworten Top
#3
Alternativ: Rechne die Uhrzeiten in Sekundenwerte um.

Code:
=STUNDE(E13)*60*60+MINUTE(E13)*60+SEKUNDE(E13)
=E13*24*60*60
Wir sehen uns!
... Detlef

Meine Beiträge können Ironie oder Sarkasmus enthalten.

Antworten Top
#4
Hallo c...,

Wie du in "ger. Uhrzeit" selbst angewandt hast, ist eine Zeitangabe in Excel ein Gleitkommazahl. Bei Überprüfung von Gleitkommazahlen auf Gleichheit haben Rechner (nicht nur in Excel) einige Probleme, da "gleiche" Zahlen binär unterschiedlich gespeichert werden.
Hier eine mögliche Formel für "Ent1"
Code:
=WENN(ABS($H4-$E$13)<1/1440;$F$13;0)
helmut

Für mich ist die Möglichkeit in Excel an Zellen und Bereichen Namen zu vergeben die wichtigste Funktionalität.
Sie macht Formeln und den VBA-code verständlicher. Für Makros gilt die Regel: "Nur über benannte Bereiche auf den Inhalt der Zellen zugreifen."
Und wofür sind Regeln da? Um nachzudenken bevor man sie bricht.





Antworten Top
#5
Vielen Dank für die Hilfen, die Änderung der Gleitkommazahl hat das Problem tatsächlich behoben!
Interessanterweise tritt das Problem nicht auf, wenn ich die gleiche Datei mit LibreOffice öffne. Excel und LibreOffice rechnen intern offensichtlich völlig anders.
Antworten Top
#6
Durchaus möglich, dass Excel Zeiten "genauer" behandelt als LibreOffice.
(heißt: Excel "rundet" per Format, LO vorher schon auf Sekunden)
Gib einem Mann einen Fisch und du ernährst ihn für einen Tag. 
Lehre einen Mann zu fischen und du ernährst ihn für sein Leben. (Konfuzius)
Antworten Top


Gehe zu:


Benutzer, die gerade dieses Thema anschauen: 1 Gast/Gäste