Method
CDbl
Warning
This item was deprecated in version 2019r2. Please use String.ToDouble as a replacement.
Description
Returns the numeric equivalent of the passed string. This function is the same as the Val function but is international-savvy.
Usage
result = Cdbl(string) OR
result = stringVariable.CDbl
Part |
Type |
Description |
---|---|---|
result |
The numeric equivalent of the string passed, if a numeric equivalent exists. |
|
string |
Any valid string expression. |
|
stringVariable |
Any variable of type String. |
Notes
Use Val if you control the string that is passed, and use CDbl if the string comes from the user. You should use CDbl instead of Val if the string contains separators.
See the Val function for more information.
CDbl returns zero if string contains no numbers, except in the special case where the string begins with the string “NAN”. In this case, it returns "NAN(021)".
Numbers are converted only if they are found at the beginning of the string. Any numbers that follow a non-numeric value are ignored.
So,
"1AA2" returns 1 "AA2" returns 0 "12AA54" returns 12
Sample code
This code use the CDbl function to return the numbers contained in a String.
Dim n As Double
n = CDbl("12345") ' returns 12345
n = CDbl("54.05car45") ' returns 54.05
n = CDbl("123.45") ' returns 123.45
n = CDbl("123 45") ' returns 123
n = CDbl("123,456") ' returns 123456
n = CDbl("auto") ' returns 0
n = CDbl("&hFFF") ' returns 4095
n = CDbl("&b1111") ' returns 15
This code shows both usages of CDbl.
Dim d As Double
Dim s As String
s = "65.4"
d = s.CDbl
d.Cdbl(s)
Compatibility
All project types on all supported operating systems.
See also
String.ToInt64, CStr, Double.FromString, Format, IsNumeric, Str, Val functions.