Convert an empty string to a double

A

Adrian T

Hello:


Is there a way to convert an empty ("") string variable to
a NULL (NOT a zero) double variable. I have tried the Val
function and CDbl function. The first one gives me
a 'zero' double variable. The second one gives me a run-
time error.


Thank you,
Adrian T
 
P

pikus

Well... no. But what are you trying to accomplish? If you declared you
variable as a string than that variable is always going to be a string
If your variable is undeclared ad you assign it a value of "Null" i
will just be of type Variant/Null. You could just assign a differen
Double a value of "Null." Does that work? - Piku
 
A

Adrian T

Basically what I am doing is to assign values from a
delimited text (seperated by semicolons) into an array
with the Split function. The array will be in String by
default and will be useless since I am looking for doubles.

The challenge occurs when the text file passes a null
value (blank) for missing elements, for example:
300;540;;780;;600 and so on. Positions are very important
here, so having a blank after 540 is very important as
saying the third element is null (NOT a zero since zero
means number 0).
The code needs to determine how many loops to be called.
In this case, the loop calls 300 and 540 as double values,
which are easy to convert to (from the string array). But
the third element will give me a zero value (not NULL)
after I try to convert it from a string. The loop now will
call all three elements, 300,540 and 0, which would be
wrong.


Well..I guess I have to manipulate the way how the code
calls for loops. It's just nice if there is a function
that could convert "" to a NULL double.


Thank you,
Adrian T
 
H

Harlan Grove

...
...
Well..I guess I have to manipulate the way how the code
calls for loops. It's just nice if there is a function
that could convert "" to a NULL double.
...

You are *FAILING* to understand that there isn't any NULL double in VB[A]. If
your variable is of type Double, then it can only contain available numeric
values because VB[A]'s Double type won't/can't store IEEE floating point
exception values or anything other than numeric values. So, if you're using
Double type, you can't do what you want to do - PERIOD. If you're using Variant
type, you can store NULL values in them, as well as strings and various other
junk, but you'll need to use VB[A]'s IsNull function to screen them out.

There may be several ways to improve your code, but you haven't been willing yet
to offer it up for scrutiny. Too damn much guesswork without your original code,
so the only answer to give you is, "yes, you'll have to modify your code."
 

Ask a Question

Want to reply to this thread or ask your own question?

You'll need to choose a username for the site, which only take a couple of moments. After that, you can post your question and our members will help you out.

Ask a Question

Top