The round function works correctly for me with everything I've tried. What is the data type of [Amount]? Do you have the full code of the section where the rounding is going wrong? Perhaps it's being truncated before it's being rounded.
Try also to use:
Math.Round([Amount] * 0.015, 2)
Round(cDbl([Amount]) * 0.015, 2)
If all else fails you can do your own rounding:
--------------------------------------------------------------
Dim vTmp As Variant, iMakeInt As Long, fRightNumber As Double
vTmp = [Amount] * 0.015 'Check this value, make sure there are several decimal places, not truncated
vTmp = vTmp + .005 'Add the extra '5' to the appropriate decimal place
iMakeInt = Int(vTmp * 100) 'Check and see that the value is correct minus the decimal
fRightNumber = cDbl(iMakeInt / 100) 'fRightNumber should now contain right number
--------------------------------------------------------------
If any of the values above as you step through the equation returns a bad value then you may consider a detect and repair. You may want to anyway if you're using proper data types and Round isn't working right.
|