Type de Var VBA

Cet article montrera l'utilisation de la fonction VarType dans VBA.

VarType signifie Type de variable. Nous pouvons fournir le nom de la variable à la fonction VarType, et elle renverra un entier qui décrit le type de données stockées dans cette variable en fonction d'une liste de constantes VBA.

Utilisation d'une variable de variante pour trouver le VarType

Nous pouvons déclarer une variable en tant que variable Variant. Cela nous permettra d'y stocker tout type de données autorisées. Nous pouvons ensuite remplir cette variable et utiliser la fonction VarType pour voir quel type de données se trouve dans la variable.

Par exemple:

12345 Sous TestVarType()Dim MyVariable en tant que varianteMaVariable = "Bonjour tout le monde"MsgBox "Le type de variable est " & VarType(MaVariable)Fin du sous-marin

Cela renverra la boîte de message suivante :

La valeur 8 est donc renvoyée. Ceci dans une constante Excel qui définit le type de données stockées dans la variable.

Cette valeur constante correspond au tableau ci-dessous :

Constant Valeur La description
vbVide 0 Vide (non initialisé)
vbNull 1 Null (aucune donnée valide)
vbEntier 2 Entier
vbLong 3 Entier long
vbUnique 4 Nombre à virgule flottante simple précision
vbDouble 5 Nombre à virgule flottante double précision
vbDevise 6 Valeur en devise
vbDate 7 Valeur de date
vbChaîne 8 Chaîne de caractères
vbObjet 9 Objet
vbErreur 10 Valeur d'erreur
vbBooléen 11 Valeur booléenne
vbVariante 12 Une variante (utilisé uniquement avec des tableaux de variantes)
vbDataObject 13 Un objet d'accès aux données
vbDécimal 14 Valeur décimale
vboctet 17 Valeur en octet
vbLongLong 20 Entier LongLong (valide sur les plates-formes 64 bits uniquement)
vbUserDefinedType 36 Variantes qui contiennent des types définis par l'utilisateur
vbArray 8192 Tableau (toujours ajouté à une autre constante lorsqu'il est renvoyé par cette fonction)

On peut essayer un autre exemple :

12345 Sous TestVarType()Dim MyVariable en tant que varianteMaVariable = 32760MsgBox "Le type de variable est " & VarType(MaVariable)Fin du sous-marin

Cette fois, la boîte de message renverra un 2 car le type de données stockées dans la variable est un entier.

Cependant, si nous modifions la valeur en 32780, la valeur renvoyée sera 3 - Entier long car un type de données Integer a une valeur maximale de 32767; après quoi c'est un entier long.

Si nous devions à nouveau modifier le code :

12345 Sous TestVarType()Dim MyVariable en tant que varianteMaVariable = 32760.52MsgBox "Le type de variable est " & VarType(MaVariable)Fin du sous-marin

Nous obtiendrions maintenant une valeur de 5 renvoyée - le type de données est Double en raison des décimales.

Si nous devions mettre la valeur dans la variable entre guillemets, alors encore une fois, un 8 serait renvoyé car toute valeur contenue entre guillemets est stockée en tant que valeur de chaîne.

12345 Sous TestVarType()Dim MyVariable en tant que varianteMaVariable = "32760.52"MsgBox "Le type de variable est " & VarType(MaVariable)Fin du sous-marin

Vous contribuerez au développement du site, partager la page avec vos amis

wave wave wave wave wave