TOP

VBA-Leçon 6.1. Types de données (Variables)

YouLibreCalc for Excel logo

À l'aide de variables, nous pouvons enregistrer tous types d'informations, telles que : des chiffres, du texte, une date, etc.

Une variable (Variable) est une zone de mémoire nommée utilisée pour stocker une valeur unique. La valeur d'une variable peut être modifiée lors de l'exécution du code.

Lorsque nous déclarons une variable (à l'aide de l'instruction Dim), nous allouons une zone de mémoire spécifique et lui attribuons un nom pour une référence facile.

Vous trouverez ci-dessous les règles de base pour la dénomination des variables :

  • Vous devez utiliser une lettre comme premier caractère ;
  • Vous ne pouvez pas utiliser d'espace, de point (.), de point d'exclamation (!) ou de symboles @, &, $, # dans le nom ;
  • Le nom ne peut pas dépasser 255 caractères ;
  • Vous ne pouvez pas utiliser les mots-clés réservés Visual Basic comme nom de variable.

  • Prenons le premier exemple :

    Sub variables()
       'Déclarez la variable sous forme d'entier
       Dim my_variable As Integer
       'Nous attribuons une certaine valeur à la variable
       my_variable = 12
       'Nous affichons la valeur de la variable dans la fenêtre de message
       MsgBox my_variable
    End Sub
    

    La première ligne de code déclare une variable :

       Dim my_variable As Integer
    
  • Dim : définition des variables
  • my_variable : nom de la variable
  • As : définition du type de variable
  • Integer : type de variable
  • En général, déclarer des variables n’est pas obligatoire et le code fonctionnera, mais c’est fortement recommandé. Cela permet de travailler plus facilement avec eux, de les trouver et de résoudre divers problèmes. En principe, déclarer des variables est une bonne habitude de programmation.

    Le type d'une variable indique la nature de son contenu (texte, nombre, date, etc.).

    Le deuxième ruban attribue une valeur à une variable :

       my_variable = 12
    

    Et enfin, le troisième ruban affiche la valeur de la variable dans la fenêtre de message :

       MsgBox my_variable
    

    Le résultat de l'exécution du code sera le suivant :

    Types de variables

    Nom Taper Description Symbole
    Byte Numérique Un entier compris entre 0 et 255
    Integer Numérique Un entier compris entre -32'768 et 32'767 %
    Long Numérique Un nombre entier compris entre - 2'147'483'648 et 2'147'483'647 &
    Currency Numérique Décimal fixe entre -922'337'203'685'477.5808 et 922'337'203'685'477.5807 @
    Single Numérique Un nombre décimal à virgule flottante compris entre -3,402823E38 et 3,402823E38 !
    Double Numérique Un nombre décimal à virgule flottante compris entre -1,79769313486232D308 et 1,79769313486232D308 #
    String Texte Texte $
    Date Date Date et l'heure
    Boolean Booléen Vrai (Oui) ou Faux (Non)
    Object Objet Microsoft Object
    Variant Un autre Tout type de données (type par défaut si la variable n'est pas définie)

    Considérons plusieurs exemples avec différents types de variables :

     'Entier
     Dim nbInteger As Integer
     nbInteger = 12345
       
     'Nombre décimal
     Dim nbComma As Single
     nbComma = 123.45
    
     'Texte
     Dim varText As String
     varText = "moonexcel.com.ua"
    
     'Date
     Dim varDate As Date
     varDate = "24.08.2012"
    
     'Booléen Vrai/Faux
     Dim varBoolean As Boolean
     varBoolean = True
       
     'Objet (feuille de calcul en tant que type de variable)
     Dim varSheet As Worksheet
     Set varSheet = Sheets("Sheet2") 'Set => attribuer une valeur à une variable de type "objet"
       
     'Un exemple d'utilisation d'une variable de type "objet" : activation d'une feuille
     varSheet.Activate
    

    Les symboles répertoriés dans le tableau peuvent être utilisés pour des déclarations de variables plus courtes :

     Dim example As Integer
     Dim example%
    

    Ces deux entrées sont identiques.

    Vous pouvez également forcer l'utilisateur à déclarer des variables en écrivant la commande Option Explicit au début du module. Dans ce cas, un message d'erreur apparaîtra si une variable non déclarée a été saisie.