[AccessD] Strange results with simple calculation on a form

Bert-Jan Brinkhuis thevigil at kabelfoon.nl
Fri Mar 19 03:54:53 CST 2004


Gustav,

yes you are right.... but i there is a deadline.... and when it works i
choose the less time consuming solution.... ;-)

Bert-Jan

----- Original Message ----- 
From: "Gustav Brock" <gustav at cactus.dk>
To: "Access Developers discussion and problem solving"
<accessd at databaseadvisors.com>
Sent: Friday, March 19, 2004 8:58 AM
Subject: Re: [AccessD] Strange results with simple calculation on a form


> Hi Bert-Jan
>
> You can do that, of course, but it is preferable to solve a problem by its
root.
>
> /gustav
>
>
> > Gustav,
>
> > thanks for your answer. I keep forgetting textboxes only contain text...
i
> > think i will forget it this time again... ;-)
> > The maximum is 2 decimals so that is no problem. But since the
differences
> > was at the 15th decimal (although i only tested this 1 time...) I decide
to
> > add round([calculation];2) in the total field. I think this is ok
because i
> > know only numers with 2 decimals are entered....
>
> > Bert-Jan
>
> > ----- Original Message ----- 
> > From: "Gustav Brock" <gustav at cactus.dk>
> > To: "Access Developers discussion and problem solving"
> > <accessd at databaseadvisors.com>
> > Sent: Thursday, March 18, 2004 11:18 AM
> > Subject: Re: [AccessD] Strange results with simple calculation on a form
>
>
> >> Hi Bert-Jan
> >>
> >> Welcome back.
> >>
> >> Unbound textboxes contain text no matter how you format them.
> >> And decimals may not be exact Doubles and indeed not Singles.
> >>
> >> If you can accept a maximum of four decimals, use CCur(txtYourTextbox)
> >> to convert to Currency before doing any calculation or comparison.
> >> Else use CDbl() and compare to a max. tolerance of your choice:
> >>
> >>   If Abs(dblTotal - dblAmount) < 1E-7 Then
> >>     ' Values are equal.
> >>   End If
> >>
> >> /gustav
> >>
> >>
> >> > Hi all,
> >>
> >> > i was forced to unsubscribe a while ago because i couldn't keep up
with you
> >> > and all the messages... ;-)
> >>
> >> > But today a strange thing happened i had to ask you all about. I
didn't do a
> >> > big search on the internet, but searched the accessd archives and
didn't
> >> > find it. It maybe is a well known problem, but here it goes.....
> >>
> >> > I have an unbound form where users will type amounts. All the
txtboxes'
> >> > format are set to "standard" and the decimal places is set to 2. And
i check
> >> > on the before_update event of these txtboxes if there are more then 2
> >> > decimals, if so, cancel = true. There is an calculated total control
> >> > (txtTotal) wich has a controlsource like =[txtbox1]+[txtbox2] and so
on (in
> >> > total 12 txtboxes)
> >> > These txtboxes are used to 'split up' the amount in another txtbox.
> >> > (txtAmount)
> >>
> >> > Before saving i check if txtAmount = txtTotal. When no decimals are
used
> >> > there is no problem, if there are only used decimals in 1 txtbox
there is no
> >> > problem. But if there are used decimals in more txtboxes access will
tell me
> >> > the values are not the same..... although the same values are
shown... it
> >> > turns out there is a difference of: 0.00000000000000710542735!!!!!!
> >> > (debug.print told me this!)
> >>
> >> > When i use the same 'function' in VBA it works fine with the same
> >> > values....????
> >>
> >> > So it is not a real problem, but it IS something strange... wel to me
it
> >> > is....
> >>
> >> > Thanks in advance.
> >>
> >> > Hope to keep up with you this time... ;-)
> >>
> >> > Bert-Jan
>
> -- 
> _______________________________________________
> 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