CLng-Funktion

Gibt einen Ausdruck zurück, der in eine Variant-Variable vom Subtyp "Long" konvertiert wurde.

Syntax

CLng(expression)

Anmerkungen

Das Argument für "expression" ist ein beliebiger gültiger Ausdruck.

Mit der Funktion CLng können Sie international angepasste Konvertierungen eines anderen Datentyps in einen Long-Subtyp bereitstellen. Beispiel: Je nach Gebietsschemaeinstellung Ihres Systems werden verschiedene Dezimaltrennzeichen korrekt erkannt, ebenso verschiedene Tausendertrennzeichen.

Wenn der Ausdruck außerhalb des zulässigen Bereichs für den Long-Subtyp liegt, tritt ein Fehler auf.

Im folgenden Beispiel wird die CLng-Funktion verwendet, um einen Wert in einen Long-Subtyp zu konvertieren:

Beispiel 1:

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

Beispiel 2:

Dim MyString, MyLong
MyString = "123456.78"    
MyLong = CLng(MyString)   
'Output: 123457

Beispiel 3:

Dim MyLocaleString
MyLocaleString = "12.345,67"   ' Locale-specific decimal separator.
MyLong = CLng(MyLocaleString)  ' Convert to Long, interpreted based on locale.
'MyLong contains the correctly interpreted long value within locale settings

Beispiel 4:

MyDouble = 2.6
MyLong = CLng(MyDouble)   ' 2.6 rounds to 3.
'Output: 3

Beispiel 5:

MyDouble = 2.4
MyLong = CLng(MyDouble)   ' 2.4 rounds to 2.
'Output: 2

Beispiel 6:

MyDouble = 1.5
MyLong = CLng(MyDouble)   ' 1.5 rounds to 2 (nearest even number).
'Output: 2

Beispiel 7:

MyDouble = 0.5
MyLong = CLng(MyDouble)   ' 0.5 rounds to 0 (nearest even number).
'Output: 0

Hinweis:

CLng unterscheidet sich von den Funktionen "Fix" und "Int", die die Nachkommastellen einer Zahl abschneiden und nicht runden. Wenn die Dezimalzahl genau 0,5 ist, rundet die CLng-Funktion sie immer auf die nächste Ganzzahl. Beispiel: 0,5 wird auf 0 gerundet und 1,5 auf 2.