HERBERS Excel-Forum - das Archiv
UDF liefert kein Ergebnis
TOYY1

Hallo zusammen,
ich habe mir eine kleine Funktion geschrieben mit der ich die Spannung von Stahl berechne. Die gleiche Funktion, zumindest den Teil um den es mir geht, habe ich in Zelle B13 stehen. Ich übergebe aus Zelle B11 exakt 25. Im Quellcode selbst wird abgefragt ob eud >= es ist. Beide Werte sind ebenfalls exakt 25 und VBA eigentlich True liefern sollte.
Kann mir bitte jemand verraten wie sowas möglich sein kann?
https://www.herber.de/bbs/user/119892.xlsm
Vielen Dank und viele Grüße
Frank

euk
=RUNDEN(25*1,15;2) Gruß

AW: euk
=RUNDEN(25*1,15;2) Gruß

Hallo Robert,
vielen Dank für deine schnelle Hilfe. Dennoch ist mir nicht so recht klar, wenn ich im Debugmodus nachsehe und mir VBA dort 2x 25 anzeigt, wieso es dann anscheinend intern doch nicht 25 ist. Sowas ist doch recht unschön wie ich finde.
Ist das also eine gewisse "Ungenauigkeit"?
Vielen Dank und viele Grüße
Frank
AW: euk
=RUNDEN(25*1,15;2) Gruß

Hallo Frank,
das ist weder unschön noch unerwartet!
Lass dir per Debug.Print mal es-eud ausgeben, dann siehst du, das die Werte nicht gleich sind.
http://scienceblogs.de/von_bits_und_bytes/2011/09/15/gleitkommazahlen-warum-computer-doch-nicht-so-prazise-rechnen-teil-2/?all=1
Gruß Sepp

AW: euk
=RUNDEN(25*1,15;2) Gruß

Guten Abend Sepp,
vielen Dank für Deine Antwort - wieder einmal etwas dazu gelernt. Kurz nachdem ich meine Anfrage gepostet hatte, habe ich es-eud im Debug.Print ausgeben lassen :o). Am besten man rechnet mal die vorgegebenen Zahlen ins Binärsystem um und wieder zurück, um genau zu verstehen was da passiert.
Vielen Dank und viele Grüße
Frank