[AccessD] Rounding Error - A2K

Reuben Cummings accessd at gfconsultants.com
Wed Dec 9 14:29:34 CST 2009


Thanks.  Interesting stuff.

I wrote a quick function that merely evaluates the 3rd decimal and either
adds .01 or doesn't in order to test the results I was getting.

Turns out the error is not in the Rounding.

THE ERROR IS IN THE MATH TO GET THE NUMBER TO BE ROUNDED.


In Access 332,215.50 * .258099 = 85744.48492
In Excel or on a calculator...         85744.48833

The other problem...
In Access 98518.68 * .253696 = 24993.79451
In Excel or calculator...             24993.79504

If I "Hard Code" the calc into a query I get the .48833.
But if I let the query do the math to the 332215.50 and then multiply I get
.48492

I've looked for extra decimals, but see nothing.

Any ideas?

Reuben Cummings
GFC, LLC
812.523.1017


> -----Original Message-----
> From: accessd-bounces at databaseadvisors.com 
> [mailto:accessd-bounces at databaseadvisors.com] On Behalf Of 
> Gustav Brock
> Sent: Wednesday, December 09, 2009 1:55 PM
> To: accessd at databaseadvisors.com
> Subject: Re: [AccessD] Rounding Error - A2K
> 
> 
> Hi Reuben
> 
> Round in Access is known to be buggy.
> If you are interested in rounding and how to optimise this 
> regarding speed while still being accurate, read on here:
> 
>   http://www.xbeat.net/vbspeed/c_Round.htm 
> 
> Note that the absolutely simplest (but slowest) method to 
> perform 100% correct (mathematical) rounding is ... Format!
> 
> /gustav
> 
> 
> >>> accessd at gfconsultants.com 09-12-2009 19:39:40 >>>
> Can anyone explain to me, given the following two sets of 
> numbers why I get
> the answers I do in Access?
> I'll also provide the answers to the same numbers and 
> equations in Excel.
> Access simply seems to be rounding wrong.
> And these are only 2 out of 22.  The other 20 are correct.
> 
> =============================================
> .47
> 206104.58
> 118507.98
> 3312.20
> 16
> 4274.27
> Total = 332215.50
> 
> % = .258099
> 
> If I do Round(Total*%,2) I get 85,744.48
> In excel I get 85,744.49
> 
> The number, before rounding is 85744.48833
> 
> =============================================
> 
> The 2nd set is 
> 66986.81
> 29694.41
> 1837.46
> Total = 98518.68
> 
> % = .253696
> 
> Round(Total*%,2) in Access gives me 24,993.79
> 
> Excel gives me 24,993.80
> 
> Before rounding it is 24993.79504
> =============================================
> 
> Why the rounding errors?
> 
> Reuben Cummings
> GFC, LLC
> 812.523.1017
> 
> 
> 
> -- 
> AccessD mailing list
> AccessD at databaseadvisors.com
> http://databaseadvisors.com/mailman/listinfo/accessd
> Website: http://www.databaseadvisors.com
> 






More information about the AccessD mailing list