🟰 Les variables
Utilisation des variables
En programmation, une variable est un espace mémoire utilisé pour stocker une information. On peut la comparer à une boîte à laquelle on donne un nom afin de se souvenir de ce qu’elle contient.
ma_variable = 8
Ici, nous avons créé une variable nommée ma_variable à laquelle nous avons affecté la valeur 8.
Les types de variables les plus couramment utilisés en VBA sont les suivants :
| Nom | Type | Détails | Mémoire |
|---|---|---|---|
| Byte | Numérique | Nombre entier (0 à 255) | 1 octet |
| Integer | Numérique | Nombre entier (-32 768 à 32 767) | 2 octets |
| Long | Numérique | Nombre entier (-2 147 483 648 à 2 147 483 647) | 4 octets |
| Currency | Numérique | Nombre à décimales fixes (4 décimales) | 8 octets |
| Single | Numérique | Nombre à virgule flottante | 4 octets |
| Double | Numérique | Nombre à virgule flottante (haute précision) | 8 octets |
| String | Texte | Chaîne de caractères | Variable |
| Date | Date | Date et heure | 8 octets |
| Boolean | Booléen | True / False | 1 octet |
| Object | Objet | Objet Microsoft | / |
| Variant | Tous | Peut contenir n’importe quel type de donnée | Variable |
En VBA, il est recommandé de déclarer les variables avant de les utiliser. Cela améliore la lisibilité du code et limite les erreurs.
Dim variable1 As String
Dim variable2 As Integer
Dim i As Boolean
Il est également possible de déclarer ces variables sur une seule ligne :
Dim variable1 As String, variable2 As Integer, i As Boolean
Opérations sur les variables numériques
Les opérateurs les plus classiques sur des valeurs numériques sont les suivants :
Dim a As Integer, b As Integer
Dim c As Integer, d As Integer, e As Integer
Dim f As Double, g As Integer, h As Integer
a = 6
b = 4
c = a + b 'Addition (10)
d = a - b 'Soustraction (2)
e = a * b 'Multiplication (24)
f = a / b 'Division (1,5)
g = a Mod b 'Reste de la division (2)
h = a ^ b 'Puissance (1296)
Opérations sur les chaînes de caractères
Concaténation
'''vba
Dim a As String, b As String, c As String
a = "Je m'appelle Thomas"
b = "j'ai 28 ans"
c = a & " " & b
'''
Recherche dans une chaîne de caractères
Dim texte As String
texte = "Bonjour"
MsgBox Len(texte) 'Longueur de la chaîne
MsgBox Left(texte, 3) 'Bon
MsgBox Right(texte, 3) 'our
MsgBox Mid(texte, 2, 3) 'onj
MsgBox InStr(texte, "o") 'Position du premier "o"
Modification d’une chaîne de caractères
Dim texte As String
texte = "Je m'appelle Thomas"
MsgBox UCase(texte) 'Majuscules
MsgBox LCase(texte) 'Minuscules
MsgBox Replace(texte, "m'appelle", "me nomme")
Opérateurs de comparaison
Une comparaison retourne True si elle est vraie, sinon False.
| Opérateur | Signification |
|---|---|
| = | Égal à |
| <> | Différent de |
| < | Inférieur à |
| <= | Inférieur ou égal à |
| > | Supérieur à |
| >= | Supérieur ou égal à |
Dim a As Integer, b As Integer
Dim resultat As Boolean
a = 2
b = 1
resultat = (a > b)
Opérateurs logiques
| And | Les deux conditions doivent être vraies |
| Or | Au moins une condition doit être vraie |
| Not | Inverse la condition |
Dim resultat As Boolean
resultat = True And False
resultat = True Or False
resultat = Not True