Variante VBA

Type de données Excel VBA Variant

Le type de données Variant dans VBA est un type de données universel qui peut contenir tout type de type de données, mais lors de l'attribution du type de données, nous devons utiliser le mot «Variant».

Nous savons tous à quel point les variables sont importantes dans les projets VBA. Une fois la variable déclarée, nous devons attribuer un type de données aux variables déclarées. L'affectation du type de données dans VBA dépend du type de données que nous devons affecter aux variables déclarées.

Pour un exemple, regardez le code ci-dessous.

Dans le code ci-dessus, j'ai déclaré la variable comme «IntegerNumber» et j'ai attribué le type de données comme «Integer» .

Avant d'attribuer le type de données à la variable, je dois être conscient des limites de la variable. Depuis que j'ai attribué le type de données Integer, ma variable peut contenir les nombres de -32768 à 32767.

Tout ce qui dépasse la limite de la limite du type de données provoquera une erreur. Donc, si nous voulons stocker plus de 32767 valeurs, nous devons affecter le type de données différent qui peut contenir plus de 32767.

Pour surmonter cette limitation, nous avons un type de données universel «Variant». Cet article vous montrera le guide complet d'un type de données Variant.

Comment déclarer un type de données de variante?

Nous pouvons déclarer le type de données variant comme type de données habituel, mais lors de l'attribution du type de données, nous devons utiliser le mot «Variant».

Code:

 Sub Variant_Example1 () Dim MyNumber As Variant End Sub 

Cela permet à la variable de fonctionner avec n'importe quel type de données maintenant. Nous pouvons attribuer des nombres, des chaînes, des dates et bien d'autres choses.

Voici la démonstration de la même chose.

Code:

 Sub Variant_Example1 () Dim MonthName As Variant Dim MyDate As Variant Dim MyNumber As Variant Dim MyName As Variant MonthName = "January" MyDate = "24-04-2019" MyNumber = 4563 MyName = "My Name is Excel VBA" End Sub 

Dans ce qui précède, j'ai attribué une date à la variable, un numéro à la variable, une chaîne à la variable. Ainsi, le type de données Variant nous permet de ne pas nous soucier du type de données que nous allons stocker ou lui attribuer.

Dès que nous déclarons une variable comme Variant, nous n'avons pas à nous soucier de notre type de données quelque part au milieu du projet pendant le codage. Cela permet à la variable de fonctionner de manière flexible selon nos besoins. Probablement avec une seule variable, nous pouvons réaliser nos opérations dans l'ensemble du projet.

La variante VBA ne nécessite pas de manière explicite

La procédure générale pour déclarer une variable VBA consiste à nommer d'abord la variable, puis à lui affecter le type de données. Voici un exemple de la même chose.

C'est la manière explicite de déclarer la variable. Cependant, lorsque nous déclarons le type de données Variant, nous n'avons pas besoin de les déclarer explicitement, nous pouvons simplement nommer la variable et omettre la partie type de données.

Code:

 Sub Variant_Example1 () Dim MyNumber End Sub 

Dans le code ci-dessus, j'ai nommé la variable «MyNumber» mais après avoir nommé la variable, je ne lui ai attribué aucun type de données.

J'ai omis la partie As [Nom du type de données] car au moment où nous ignorons la partie affectation du type de données, la variable devient invariablement Variant.

Choses à retenir

Même si le type de données «Variante» est flexible avec les données, nous allons stocker ce n'est pas le type de données populaire. Ça a l'air étrange mais absolument VRAI. À moins qu'il n'y ait une raison spécifique d'utiliser les gens, évite d'utiliser ce type de données. Voici quelques-unes des raisons pour lesquelles vous évitez d'utiliser Variant.

  • Il ignore toutes les erreurs de non-concordance de données.
  • Le type de données Variant nous empêche d'accéder à la liste IntelliSense.
  • VBA devine toujours le meilleur type de données possible et l'affecte en conséquence.
  • Dans le cas d'une limite de type de données Integer, le type de données Variant ne nous informe pas du moment où il franchit les limites de 32767.