Zusammenfassung der Datentypen
Ein Datentyp ist die Eigenschaft einer Variablen, die bestimmt, welche Art von Daten sie enthalten kann. Zu Datentypen gehören die in der folgenden Tabelle enthaltenen Datentypen sowie benutzerdefinierte Typen und spezifische Typen von Objekten.
Festlegen systeminterner Datentypen
In der folgenden Tabelle werden die unterstützten Datentypen mit ihrem Speicherbedarf und Wertebereich aufgeführt.
Datentyp | Speicherbedarf | Bereich |
---|---|---|
Boolescher Wert | 2 Byte | True oder False |
Byte | 1 Byte | 0 bis 255 |
Collection | Unbekannt | Unbekannt |
Currency (skalierte Ganzzahl) | 8 Bytes | -922.337.203.685.477,5808 bis 922.337.203.685.477,5807 |
Date | 8 Byte | -657.434 (1. Januar 100) bis 2.958.465 (31. Dezember 9999) |
Decimal | 14 Byte | +/-79.228.162.514.264.337.593.543.950.335 ohne Dezimaltrennzeichen +/-7,9228162514264337593543950335 mit 28 Stellen rechts vom Dezimaltrennzeichen Die kleinste Zahl, die nicht Null ist, lautet +/-0,0000000000000000000000000001 |
Dictionary | Unbekannt | Unbekannt |
Double (Gleitkommazahl mit doppelter Genauigkeit) | 8 Byte | -1,79769313486231E308 bis -4,94065645841247E-324 bei negativen Werten 4,94065645841247E-324 bis 1,79769313486232E308 für positive Werte |
Ganze Zahl | 2 Byte | -32.768 bis 32.767 |
Long (Lange ganze Zahl) | 4 Byte | -2.147.483.648 bis 2.147.483.647 |
LongLong (sehr lange ganze Zahl) | 8 Byte | -9.223.372.036.854.775.808 bis 9.223.372.036.854.775.807 Nur auf 64-Bit-Plattformen gültig. |
LongPtr (lange ganze Zahl auf 32-Bit-Systemen, sehr lange ganze Zahl auf 64-Bit-Systemen) | 4 Bytes auf 32-Bit-Systemen 8 Bytes auf 64-Bit-Systemen |
-2.147.483.648 bis 2.147.483.647 auf 32-Bit-Systemen -9.223.372.036.854.775.808 bis 9.223.372.036.854.775.807 auf 64-Bit-Systemen |
Object | 4 Byte | Beliebiger Object-Verweis |
Single (Gleitkommazahl mit einfacher Genauigkeit) | 4 Byte | -3,402823E38 bis -1.401298E-45 bei negativen Werten 1.401298E-45 bis 3,402823E38 für positive Werte |
String (variable Länge) | 10 Byte + Länge der Zeichenfolge | 0 bis ca. 2 Milliarden |
String (feste Länge) | Länge der Zeichenfolge | 1 bis ca. 65.400 |
Variant (mit Zahlen) | 16 Byte | Beliebiger numerischer Wert bis zum Bereich des Datentyps Double |
Variant (mit Zeichen) | 22 Byte + Länge der Zeichenfolge (24 Byte auf 64-Bit-Systemen) | Gleicher Bereich wie der Datentyp String mit variabler Länge |
Benutzerdefiniert (mithilfe von Type) | Für Elemente erforderliche Anzahl | Der Bereich jedes einzelnen Elements entspricht dem Bereich seines Datentyps. |
Ein Datentyp Variant mit einem Array erfordert 12 Byte mehr als das Array alleine.
Hinweis
Arrays von Datentypen müssen über 20 Byte an Arbeitsspeicher plus 4 Byte für jede Arraydimension sowie über die Anzahl der Byte, die von den Daten selbst belegt werden, verfügen. Der durch die Daten belegte Speicherplatz kann berechnet werden, indem die Anzahl der Datenelemente mit der Größe jedes Elements multipliziert wird.
Beispielsweise belegen die Daten in einem eindimensionalen Array, das aus 4 Integer-Datenelementen mit jeweils 2 Bytes besteht, insgesamt 8 Bytes. Die 8 Bytes, die für die Daten erforderlich sind, plus die zusätzlichen 24 Bytes, ergeben für das Array einen notwendigen Arbeitsspeicher von 32 Bytes. Auf 64-Bit-Plattformen belegen SAFEARRAYs bis zu 24 Bits (plus 4 Bytes pro Dim-Anweisung). Der pvData-Member ist ein 8-Byte-Zeiger und muss an 8-Byte-Begrenzungen ausgerichtet sein.
Hinweis
LongPtr ist kein richtiger Datentyp, weil er in einer 32-Bit-Umgebung in den Datentyp Long bzw. in einer 64-Bit-Umgebung in den Datentyp LongLong umgewandelt wird. LongPtr sollte verwendet werden, um Zeiger darzustellen und Werte in Declare-Anweisungen zu verarbeiten. Der Datentyp ermöglicht das Schreiben eines übertragbaren Codes, der sowohl in einer 32-Bit- als auch in einer 64-Bit-Umgebung ausgeführt werden kann.
Hinweis
Verwenden Sie die StrConv-Funktion, um einen Typ von Zeichenfolgedaten in einen anderen Typ zu konvertieren.
Bezeichnertypzeichen
Es wird eine Reihe von Bezeichnertypzeichen bereitgestellt, die Sie in einer Deklaration verwenden können, um den Datentyp einer Variablen oder Konstante anzugeben. Die folgende Tabelle zeigt die verfügbaren Bezeichnertypzeichen mit Beispielen für die Verwendung.
Bezeichnertypzeichen | Datentyp | Beispiel |
---|---|---|
% |
Ganze Zahl | Dim L% |
& |
Long | Dim M& |
^ |
LongLong | Dim N^ |
@ |
Währung | Const W@ = 37.5 |
! |
Single | Dim Q! |
# |
Gleitkommawert mit doppelter Genauigkeit | Dim X# |
$ |
String | Dim V$ = "Secret" |
Für die Datentypen Boolean
, , LongPtr
Date
Variant
Byte
Decimal
Double
Object
oder für zusammengesetzte Datentypen wie Arrays, Sammlungen, Wörterbücher, Strukturen oder benutzerdefinierte Typen sind keine Bezeichnertypzeichen vorhanden.
In einigen Fällen können Sie das $
Zeichen an eine Visual Basic-Funktion anfügen, z. Left$
B. anstelle von Left
, um einen zurückgegebenen Wert vom Typ String
abzurufen.
In allen Fällen muss das Bezeichnertypzeichen unmittelbar auf den Bezeichnernamen folgen.
Konvertieren von Datentypen
Beispiele für die Verwendung der folgenden Funktionen zum Umwandeln eines Ausdrucks in einen bestimmten Datentyp finden Sie unter Typkonvertierungsfunktionen: CBool, CByte, CCur, CDate, CDbl, CDec, CInt, CLng, CLngLng, CLngPtr, CSng, CStr und CVar.
Für die folgenden Funktionen finden Sie auf den jeweiligen Funktionsseiten weitere Informationen: CVErr, Fix und Int.
Hinweis
CLngLng Nur auf 64-Bit-Plattformen gültig.
Überprüfen von Datentypen
Zum Überprüfen von Datentypen sehen Sie sich die folgenden Funktionen an:
Siehe auch
Support und Feedback
Haben Sie Fragen oder Feedback zu Office VBA oder zu dieser Dokumentation? Unter Office VBA-Support und Feedback finden Sie Hilfestellung zu den Möglichkeiten, wie Sie Support erhalten und Feedback abgeben können.