Zusammenfassung der DatentypenData type summary

Ein Datentyp ist die Eigenschaft einer Variablen, die bestimmt, welche Art von Daten sie enthalten kann.A data type is the characteristic of a variable that determines what kind of data it can hold. Zu Datentypen gehören die in der folgenden Tabelle enthaltenen Datentypen sowie benutzerdefinierte Typen und spezifische Typen von Objekten.Data types include those in the following table as well as user-defined types and specific types of objects.

Festlegen systeminterner DatentypenSet intrinsic data types

In der folgenden Tabelle werden die unterstützten Datentypen mit ihrem Speicherbedarf und Wertebereich aufgeführt.The following table shows the supported data types, including storage sizes and ranges.

DatentypData type SpeicherbedarfStorage size BereichRange
Boolescher WertBoolean 2 Byte2 bytes True oder FalseTrue or False
ByteByte 1 Byte1 byte 0 bis 2550 to 255
CollectionCollection UnbekanntUnknown UnbekanntUnknown
Currency (skalierte Ganzzahl)Currency (scaled integer) 8 Bytes8 bytes -922.337.203.685.477,5808 bis 922.337.203.685.477,5807-922,337,203,685,477.5808 to 922,337,203,685,477.5807
DateDate 8 Byte8 bytes 1. Januar 100 bis 31. Dezember 9999January 1, 100, to December 31, 9999
DecimalDecimal 14 Byte14 bytes +/-79.228.162.514.264.337.593.543.950.335 ohne Dezimaltrennzeichen+/-79,228,162,514,264,337,593,543,950,335 with no decimal point

+/-7,9228162514264337593543950335 mit 28 Stellen rechts vom Dezimaltrennzeichen+/-7.9228162514264337593543950335 with 28 places to the right of the decimal

Die kleinste Zahl, die nicht Null ist, lautet +/-0,0000000000000000000000000001Smallest non-zero number is+/-0.0000000000000000000000000001
DictionaryDictionary UnbekanntUnknown UnbekanntUnknown
Double (Gleitkommazahl mit doppelter Genauigkeit)Double (double-precision floating-point) 8 Byte8 bytes -1,79769313486231E308 bis -4,94065645841247E-324 bei negativen Werten-1.79769313486231E308 to -4.94065645841247E-324 for negative values

4,94065645841247E-324 bis 1,79769313486232E308 für positive Werte4.94065645841247E-324 to 1.79769313486232E308 for positive values
Ganze ZahlInteger 2 Byte2 bytes -32.768 bis 32.767-32,768 to 32,767
Long (Lange ganze Zahl)Long (Long integer) 4 Byte4 bytes -2.147.483.648 bis 2.147.483.647-2,147,483,648 to 2,147,483,647
LongLong (sehr lange ganze Zahl)LongLong (LongLong integer) 8 Byte8 bytes -9.223.372.036.854.775.808 bis 9.223.372.036.854.775.807-9,223,372,036,854,775,808 to 9,223,372,036,854,775,807

Nur auf 64-Bit-Plattformen gültig.Valid on 64-bit platforms only.
LongPtr (lange ganze Zahl auf 32-Bit-Systemen, sehr lange ganze Zahl auf 64-Bit-Systemen)LongPtr (Long integer on 32-bit systems, LongLong integer on 64-bit systems) 4 Bytes auf 32-Bit-Systemen4 bytes on 32-bit systems

8 Bytes auf 64-Bit-Systemen8 bytes on 64-bit systems
-2.147.483.648 bis 2.147.483.647 auf 32-Bit-Systemen-2,147,483,648 to 2,147,483,647 on 32-bit systems

-9.223.372.036.854.775.808 bis 9.223.372.036.854.775.807 auf 64-Bit-Systemen-9,223,372,036,854,775,808 to 9,223,372,036,854,775,807 on 64-bit systems
ObjectObject 4 Byte4 bytes Beliebiger Object-VerweisAny Object reference
Single (Gleitkommazahl mit einfacher Genauigkeit)Single (single-precision floating-point) 4 Byte4 bytes -3,402823E38 bis -1.401298E-45 bei negativen Werten-3.402823E38 to -1.401298E-45 for negative values

1.401298E-45 bis 3,402823E38 für positive Werte1.401298E-45 to 3.402823E38 for positive values
**String ** (variable Länge)String (variable-length) 10 Byte + Länge der Zeichenfolge10 bytes + string length 0 bis ca. 2 Milliarden0 to approximately 2 billion
String (feste Länge)String (fixed-length) Länge der ZeichenfolgeLength of string 1 bis ca. 65.4001 to approximately 65,400
Variant (mit Zahlen)Variant (with numbers) 16 Byte16 bytes Beliebiger numerischer Wert bis zum Bereich des Datentyps DoubleAny numeric value up to the range of a Double
Variant (mit Zeichen)Variant (with characters) 22 Byte + Länge der Zeichenfolge (24 Byte auf 64-Bit-Systemen)22 bytes + string length (24 bytes on 64-bit systems) Gleicher Bereich wie der Datentyp String mit variabler LängeSame range as for variable-length String
**Benutzerdefiniert ** (mithilfe von Type)User-defined (using Type) Für Elemente erforderliche AnzahlNumber required by elements Der Bereich jedes einzelnen Elements entspricht dem Bereich seines Datentyps.The range of each element is the same as the range of its data type.

Ein Datentyp Variant mit einem Array erfordert 12 Byte mehr als das Array alleine.A Variant containing an array requires 12 bytes more than the array alone.

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.Arrays of any data type require 20 bytes of memory plus 4 bytes for each array dimension plus the number of bytes occupied by the data itself. Der durch die Daten belegte Speicherplatz kann berechnet werden, indem die Anzahl der Datenelemente mit der Größe jedes Elements multipliziert wird.The memory occupied by the data can be calculated by multiplying the number of data elements by the size of each element.

Beispielsweise belegen die Daten in einem eindimensionalen Array, das aus 4 Integer-Datenelementen mit jeweils 2 Bytes besteht, insgesamt 8 Bytes.For example, the data in a single-dimension array consisting of 4 Integer data elements of 2 bytes each occupies 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.The 8 bytes required for the data plus the 24 bytes of overhead brings the total memory requirement for the array to 32 bytes. Auf 64-Bit-Plattformen belegen SAFEARRAYs bis zu 24 Bits (plus 4 Bytes pro Dim-Anweisung).On 64-bit platforms, SAFEARRAY's take up 24-bits (plus 4 bytes per Dim statement). Der pvData-Member ist ein 8-Byte-Zeiger und muss an 8-Byte-Begrenzungen ausgerichtet sein.The pvData member is an 8-byte pointer and it must be aligned on 8 byte boundaries.

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 is not a true data type because it transforms to a Long in 32-bit environments, or a LongLong in 64-bit environments. 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.LongPtr should be used to represent pointer and handle values in Declare statements and enables writing portable code that can run in both 32-bit and 64-bit environments.

Hinweis

Verwenden Sie die StrConv-Funktion, um einen Typ von Zeichenfolgedaten in einen anderen Typ zu konvertieren.Use the StrConv function to convert one type of string data to another.

Konvertieren von DatentypenConvert between data types

Unter Funktionen für die Typkonvertierung finden Sie Beispiele zur Verwendung der folgenden Funktionen, um einen Ausdruck in einen bestimmten Datentyp umzuwandeln: CBool, CByte, CCur, CDate, CDbl, CDec, CInt, CLng, CLngLng, CLngPtr, CSng, CStr, and CVar.See Type conversion functions for examples of how to use the following functions to coerce an expression to a specific data type: CBool, CByte, CCur, CDate, CDbl, CDec, CInt, CLng, CLngLng, CLngPtr, CSng, CStr, and CVar.

Für die folgenden Funktionen finden Sie auf den jeweiligen Funktionsseiten weitere Informationen: CVErr, Fix und Int.For the following, see the respective function pages: CVErr, Fix, and Int.

Hinweis

CLngLng Nur auf 64-Bit-Plattformen gültig.CLngLng is valid on 64-bit platforms only.

Überprüfen von DatentypenVerify data types

Zum Überprüfen von Datentypen sehen Sie sich die folgenden Funktionen an:To verify data types, see the following functions:

Rückgabewerte für CStrReturn values for CStr

Bei AusdruckIf expression is gibt CStr zurück:CStr returns
BooleanBoolean Eine Zeichenfolge mit True oder False.A string containing True or False.
DateDate Eine Zeichenfolge mit einem Datum im kurzen Datumsformat Ihres Systems.A string containing a date in the short date format of your system.
EmptyEmpty Eine Zeichenfolge der Länge Null ("").A zero-length string ("").
FehlerError Eine Zeichenfolge, die das Wort Fehler gefolgt von der Fehlernummer enthält.A string containing the word Error followed by the error number.
NullNull Einen Laufzeitfehler.A run-time error.
Andere numerische ZeichenfolgeOther numeric Eine Zeichenfolge, die die Zahl enthält.A string containing the number.

Siehe auchSee also

Support und FeedbackSupport and feedback

Haben Sie Fragen oder Feedback zu Office VBA oder zu dieser Dokumentation?Have questions or feedback about Office VBA or this documentation? Unter Office VBA-Support und Feedback finden Sie Hilfestellung zu den Möglichkeiten, wie Sie Support erhalten und Feedback abgeben können.Please see Office VBA support and feedback for guidance about the ways you can receive support and provide feedback.