> aus 0.825 wird 0.82 mit deinem Code unten, Bei mir nicht: MsgBox str(round_kaufman(0.825))
Ergebnis 0,83 hast du auch 2009 R5.1? ja a. > Stefan > >> Und was geht NICHT? >> >> Bei mir geht's auch so: >> >> dim d as Double >> const factor=100.0 >> d = myFloatValue*factor >> return round(d)/factor >> >> a. >> >> >> >> On 01.02.10 14:29, "Stefan Sicurella" <sicure...@onlymac.de> wrote: >> >>> Hallo, >>> >>> den Wert errechne ich aus Brutto-Beträgen und der dazugehörigen MwSt. >>> Er dürfte nicht relevant sein, ist er aber in RB 2009 R5.1 >>> Meine Paniklösung, die auf jeden Fall funktioniert: >>> >>> Function round_kaufman(myFloatValue as double) As double >>> dim d as Double >>> dim sk as string >>> const factor=100 >>> d = myFloatValue*factor >>> sk=format(d,",###.0") >>> if right(sk,1)="5" then d=d+0.1 >>> return round(d)/factor >>> >>> End Function >>> >>> Gruß >>> >>> Stefan >>> >>>> Am 01.02.10 14:03, schrieb Stefan Sicurella: >>>>> Hi, >>>>> >>>>> 0.825 hatte ich auch, habs nur in der Mail von Hand falsch getippt... >>>>> >>>>> ja, wenn ich es so mache wie unten beschrieben geht es auch. >>>>> Wenn ich allerdings a durch addieren mehrerer Werte auch errechne geht es >>>>> wieder nicht. >>>>> >>>>> Nur wenn ich expliziert die Zahl hinschreibe geht es... das ist doch irre? >>>>> ;-) >>>>> >>>> >>>> Die Herkunft des Wertes von "a" dürfte generell nicht relevant sein. Wenn >>>> du >>>> dir eine Funktion baust welche den gerundeten Wert zurückgibt, so müsste >>>> das >>>> Ergebnis immer identisch sein. >>>> >>>> Hast du mal Beispiel-Code woran man sehen kann wie die unterschiedlichen >>>> Wrte >>>> (z.B. beim Addieren etc.) zustande kommen? >>>> >>>> -- >>>> Michael Kagerbauer >>>> http://rbcoder.de >>>> >>> >>> >> >> >> > >