Want to protect your cyber security and still get fast solutions? Ask a secure question today.Go Premium

x
?
Solved

Problem to compare double with lenght over 15 digits in visual basic 6

Posted on 2007-04-09
8
Medium Priority
?
826 Views
Last Modified: 2008-01-09
I face a problem to compare double with lenght over 15 digits in visual basic 6.
For example:
Dim a  as double, b as double
a = "100000000000000000"
b = "100000000000000001"
when compare a = b .. this will return True. Why true ?
when a = a + 1.. it shows 1E + 17.. how to make it show 100000000000000001 ? Pls help. Thanks.
0
Comment
Question by:alankwan
  • 3
  • 2
5 Comments
 
LVL 15

Expert Comment

by:JackOfPH
ID: 18880808
The only possible I know is to declare the variable variant.
Dim a, b
0
 
LVL 15

Accepted Solution

by:
JackOfPH earned 500 total points
ID: 18880851
0
 
LVL 11

Assisted Solution

by:TreyH
TreyH earned 500 total points
ID: 18881976
Working with that many significant digits (In VB6) would require a 3rd party library. I've used one called xlPrecision. There's a free edition you can download to try it out. It's mainly designed for Excel but I've used it in VB with no problem.

http://precisioncalc.com/xlprecision.html
http://precisioncalc.com/UseInVBA.html

Example Code for comparing your two numbers.

Dim oXLP As xlPrecision.cls_xlPrecision
Set oXLP = New xlPrecision.cls_xlPrecision
If oXLP.xlpISEQUAL("100000000000000000", "100000000000000001") Then
    MsgBox "Numbers are equal"
Else
    MsgBox "Numbers are not equal"
End If
Set oXLP = Nothing
0
 
LVL 11

Expert Comment

by:TreyH
ID: 19131607
Your call Dan, anything fine by me...
0
 
LVL 15

Expert Comment

by:JackOfPH
ID: 19155165
Yeah, its your call...
0

Featured Post

Get your problem seen by more experts

Be seen. Boost your question’s priority for more expert views and faster solutions

Question has a verified solution.

If you are experiencing a similar issue, please ask a related question

You can of course define an array to hold data that is of a particular type like an array of Strings to hold customer names or an array of Doubles to hold customer sales, but what do you do if you want to coordinate that data? This article describes…
This article describes how to use a set of graphical playing cards to create a Draw Poker game in Excel or VB6.
As developers, we are not limited to the functions provided by the VBA language. In addition, we can call the functions that are part of the Windows operating system. These functions are part of the Windows API (Application Programming Interface). U…
Show developers how to use a criteria form to limit the data that appears on an Access report. It is a common requirement that users can specify the criteria for a report at runtime. The easiest way to accomplish this is using a criteria form that a…
Suggested Courses
Course of the Month11 days, 9 hours left to enroll

564 members asked questions and received personalized solutions in the past 7 days.

Join the community of 500,000 technology professionals and ask your questions.

Join & Ask a Question