CBool(Expression) As Boolean CByte(Expression) As Byte CCur(Expression) As Currency CDate(Expression) As Date CDbl(Expression) As Double CInt(Expression) As Integer CLng(Expression) As Long CLngPtr(Expression) As LongPtr CLngLng(Expression) As LongLong CSng(Expression) As Single CStr(Expression) As String CVar(Expression) As Variant
Die Funktionen wandeln das Argument Expression
in den jeweils
angegebenen Datentyp um (Das führende
„C“ steht dabei für das englische „Cast“, für „Typumwandlung“). Expression
muss dafür jedoch in den jeweiligen Wertebereich des Datentyps „passen“. So führt
es z. B. zu einem Fehler, wenn Expression
nicht vollständig als
Ziffern interpretierbar ist und in einen Zahlen-Datentyp konvertiert werden soll.
Auch z. B. CByte(254.9)
ist zulässig (es wird gerundet, wobei
aber „254,5“ noch zu „254“ abgerundet wird), CByte(255.9)
führt
dagegen zu einem Fehler.
CLngLng
ist nur auf 64-Bit-Systemen vorhanden.
IsArray(VarName As Variant) As Boolean
Wenn die Variable VarName
ein Array ist, wird True
zurückgegeben, sonst False
.
IsDate(Expression As Variant) As Boolean
Prüft, ob sich Expression
in einen Datumswert umwandeln lässt.
IsEmpty(Expression As Variant) As Boolean
IsEmpty
gibt True
zurück, wenn Expression
eine Variable vom Typ Variant ist, der noch kein Wert zugewiesen wurde.
Einer Variablen vom Typ Variant kann auch der spezielle Wert Empty
zugewiesen werden, um die Variable wieder in den Zustand zu versetzen, als wenn
ihr noch kein Wert zugewiesen worden wäre. Empty
ist etwas anderes
als der Wert Null
, der anzeigt, dass einer Variantvariable ein leerer
Wert zugewiesen wurde.
Sub leer() Dim w As Variant w = 0 'Zuweisung eines Wertes Debug.Print w w = Null 'Zuweisung eines leeren Wertes Debug.Print w w = Empty 'Zuweisung: Kein Wert enthalten Debug.Print w End Sub
IsMissing(ArgName As Variant) As Boolean
Wenn einer Prozedur ein Argument ArgName
optional übergeben werden kann,
das vom Typ Variant ist und für das kein Standardwert definiert ist, gibt innerhalb
dieser Prozedur IsMissing
genau dann True
zurück, wenn
ArgName
nicht übergeben wurde.
Function KeinWert(Optional EinWert) KeinWert = IsMissing(EinWert) End Function
Zumeist kann auf IsMissing
verzichtet werden. Variant ist ohnehin
ein Datentyp, der nach Möglichkeit vermieden werden sollte, und wenn man optionale
Argumente verwendet, ist es im Allgemeinen sinnvoll, Ihnen einen Startwert zu geben.
Argumente eines anderen Datentyps als Variant haben auch ohne einen speziell definierten
Startwert stets einen Wert.
IsNull(Expression As Variant) As Boolean
Gibt True
zurück, wenn Expression
eine Variable vom
Typ Variant ist und ihr der spezielle Wert Null
zugewiesen wurde.
Null
zeigt an, dass die Variable keine gültigen Daten enthält.
IsNumeric(Expression As Variant) As Boolean
Prüft, ob sich Expression
in eine Zahl umwandeln lässt.
IsObject(Expression As Variant) As Boolean
Prüft, ob es sich bei Expression
um eine Objektvariable handelt.
Str(Number) As String
Wandelt eine Zahl in einen String um. Das Argument Number
muss einem
beliebigen numerischen Datentyp
entsprechen. Im Gegensatz zu CStr
fügt Str
bei positiven
Werten ein führendes Leerzeichen für das Vorzeichen ein. Bei Zahlen mit
Nachkommastellen nutzt Str
den Punkt als Trennzeichen, CStr
richtet sich dagegen nach den länderspezifischen Einstellungen des Systems.
TypeName(VarName As Variant) As String
Gibt einen definierten String
zurück, der den Datentyp von VarName
angibt.
Val(String As String) As Double
Wandelt einen String in eine Zahl um. String
darf auch Zeichen
enthalten, die nicht als Text interpretierbar sind. String
wird von
links nach rechts wie folgt interpretiert: Leerzeichen werden entfernt, als Zahl
interpretierbare Zeichen werden solange zurückgegeben, bis ein nicht als Zahl
interpretierbares Zeichen gefunden wird. Der Rest wird abgeschnitten.
Debug.Print Val(" 1.23 Euro") 1,23
VarType(VarName As Variant) As VbVarType
Gibt aus der Aufzählung VbVarType
den Wert zurück, der dem Datentyp von VarName
entspricht.