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.