Ok, das ist sehr merkwürdig, aber ich weiß nicht, was ich da falsch machen könnte
Gruß Stefan > >> 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 >>>>> >>>> >>>> >>> >>> >>> >> >> > > >