Hallo,
habe folgendes Problem. Ich versuche mit VBA richtig zu runden. Dabei stoße ich jedoch bei meinem ersten Test auf folgendes Problem:
Bei einer vorherigen Division lautet das Ergebnis 0,16666666 (Periode)
Danach soll das Ergebnis mit drei multipliziert werden und dann grundet werden. Das Problem:
0,166666666*3 = 0,4999999998
VBA rundet jedoch das Double direkt auf 0,1666666667:
0,166666667*3 = 0,5000000001
Mir fällt leider keine Möglichkeit ein wie ich in einem solchen Fall vorgehen soll. Leider ist es aber ziemlich wichtig ob das Ergebnis 0 oder 1 ist. Auch wenn ich direkt die Rechnung runde, sprich
WorksheetFunction.Round((1/6)*3)
bringt das nicht den gewünschten Erfolg.
Über Hilfe wär ich echt dankbar.
Grüße Tobi
|