Microsoft® Visual Basic® Scripting Edition
CLng Function
 Language Reference 
Version 1 

See Also


Description
Returns an expression that has been converted to a Variant of subtype Long.
Syntax
CLng(expression)

The expression argument is any valid expression.

Remarks
In general, you can document your code using the subtype conversion functions to show that the result of some operation should be expressed as a particular data type rather than the default data type. For example, use CInt or CLng to force integer arithmetic in cases where currency, single-precision, or double-precision arithmetic normally would occur.

Use the CLng function to provide internationally aware conversions from any other data type to a Long subtype. For example, different decimal separators are properly recognized depending on the locale setting of your system, as are different thousand separators.

If expression lies outside the acceptable range for the Long subtype, an error occurs.

The following example uses the CLng function to convert a value to a Long:

Dim MyVal1, MyVal2, MyLong1, MyLong2
MyVal1 = 25427.45: MyVal2 = 25427.55    ' MyVal1, MyVal2 are Doubles.
MyLong1 = CLng(MyVal1)    ' MyLong1 contains 25427.
MyLong2 = CLng(MyVal2)    ' MyLong2 contains 25428.

Note  CLng differs from the Fix and Int functions, which truncate, rather than round, the fractional part of a number. When the fractional part is exactly 0.5, the CLng function always rounds it to the nearest even number. For example, 0.5 rounds to 0, and 1.5 rounds to 2.