Synthèse des types de données
Un type de données est la caractéristique d’une variable qui détermine la sorte de données qu’elle peut contenir. Les types de données incluent ceux du tableau suivant, ainsi que des types définis par l’utilisateur et des types d’objet spécifiques.
Définir des types de données intrinsèques
Le tableau suivant montre la prise en charge types de données, y compris les tailles de stockage et des plages.
Type de données | Taille | Plage |
---|---|---|
Boolean | 2 octets | True ou False |
Byte | 1 octet | 0 à 255. |
Collection | Inconnu | Inconnu |
Currency (entier mis à l’échelle) | 8 octets | -922 337 203 685 477,5808 à 922 337 203 685 477,5807 |
Date | 8 octets | -657 434 (1er janvier 100), à 2 958 465 (31 décembre 9999) |
Decimal | 14 octets | +/-79 228 162 514 264 337 593 543 950 335 sans décimale +/-7,9228162514264337593543950335 avec 28 positions à droite de la décimale Le plus petit nombre différent de zéro est +/-0,0000000000000000000000000001 |
Dictionary | Inconnu | Inconnu |
Double (virgule flottante à double précision) | 8 octets | De -1,79769313486231E308 à -4,94065645841247E-324 pour les valeurs négatives De 4,94065645841247E-324 à 1,79769313486232E308 pour les valeurs positives |
Integer | 2 octets | À : |
Long (entier long) | 4 octets | À : |
LongLong (entier LongLong) | 8 octets | De -9 223 372 036 854 775 808 à 9 223 372 036 854 775 807 Valide uniquement sur les plateformes 64 bits. |
LongPtr (Entier long sur les systèmes 32 bits, entier LongLong sur les systèmes 64 bits) | 4 octets sur les systèmes 32 bits 8 octets sur les systèmes 64 bits |
De -2 147 483 648 à 2 147 483 647 sur les systèmes 32 bits De -9 223 372 036 854 775 808 à 9 223 372 036 854 775 807 sur les systèmes 64 bits |
Object | 4 octets | N’importe quel objet référence |
Single (virgule flottante simple précision) | 4 octets | De -3,402823E38 à -1,401298E-45 pour les valeurs négatives De 1,401298E-45 à 3,402823E38 pour les valeurs positives |
String (longueur variable) | 10 octets + longueur de chaîne | 0 à environ 2 milliards |
String (longueur fixe) | Longueur de chaîne | 1 à environ 65 400 |
Variant (avec nombres) | 16 octets | Une valeur numérique à la plage d’un Double |
Variant (avec caractères) | 22 octets + longueur de chaîne (24 octets systèmes 64 bits) | Même plage que pour longueur variable chaîne |
User-defined (utilisant Type) | Numéro requis par les éléments | La plage de chaque élément est identique à la plage de son type de données. |
Des données de type Variant contenant un tableau nécessitent 12 octets de plus qu’un tableau isolé.
Remarque
Matrices de toutes les données type nécessitent 20 octets de mémoire plu 4 octets pour chaque dimension de tableau ainsi que le nombre d’octets occupé par les données elles-mêmes. Mémoire occupée par les données peut être calculée en multipliant le nombre d’éléments de données par la taille de chaque élément.
Par exemple, les données dans un tableau unique dimension constitué de 4 entier éléments de données de 2 octets occupe 8 octets. 8 octets requis pour les données plus 24 octets de surcharge permet d’accéder à la configuration requise mémoire total pour la matrice à 32 octets. Sur les plateformes 64 bits, SAFEARRAY prend jusqu'à 24 bits (plus de 4 octets par instruction Dim). Le membre pvData est un pointeur 8 octets et doit être aligné sur les limites de 8 octets.
Remarque
LongPtr n’est pas un véritable type de données, car il est converti en Long dans les environnements 32 bits, ou en LongLong dans les environnements 64 bits. LongPtr doit être utilisé pour représenter les valeurs de pointeur et de handle dans les instructions Declare et permet d’écrire du code portable exécutable dans les environnement 32 et 64 bits.
Remarque
Utilisez la fonction StrConv pour convertir un type de données String en un autre.
Caractères de type d’identificateur
Un jeu de caractères de type identificateur est fourni que vous pouvez utiliser dans une déclaration pour spécifier le type de données d’une variable ou d’une constante. Le tableau suivant présente les caractères de type d’identificateur disponibles avec des exemples d’utilisation.
Caractère de type d’identificateur | Type de données | Exemple |
---|---|---|
% |
Entier | Dim L% |
& |
Entier long | Dim M& |
^ |
LongLong | Dim N^ |
@ |
Devise | Const W@ = 37.5 |
! |
Unique | Dim Q! |
# |
Double | Dim X# |
$ |
Chaîne | Dim V$ = "Secret" |
Il n’existe aucun caractère de type d’identificateur pour les Boolean
types de données , Decimal
LongPtr
Date
Double
Byte
, Object
Variant
, ou pour les types de données composites tels que les tableaux, les collections, les dictionnaires, les structures ou les types définis par l’utilisateur.
Dans certains cas, vous pouvez ajouter le $
caractère à une fonction Visual Basic, par exemple Left$
au lieu de Left
, pour obtenir une valeur retournée de type String
.
Dans tous les cas, le caractère de type d’identificateur doit immédiatement suivre le nom de l’identificateur.
Convertir des types de données
Consultez Fonctions de conversion de type pour obtenir des exemples d’utilisation des fonctions suivantes pour contraindre une expression à un type de données spécifique : CBool, CByte, CCur, CDate, CDbl, CDec, CInt, CLngLng, CLngPtr, CSng, CStr et CVar.
Pour ce qui suit, voir les pages des fonctions respectives : CVErr, Fix et Int.
Remarque
CLngLng est valide uniquement sur les plateformes 64 bits.
Vérifier des types de données
Pour vérifier des types de données, voir les fonctions suivantes :
Voir aussi
Assistance et commentaires
Avez-vous des questions ou des commentaires sur Office VBA ou sur cette documentation ? Consultez la rubrique concernant l’assistance pour Office VBA et l’envoi de commentaires afin d’obtenir des instructions pour recevoir une assistance et envoyer vos commentaires.