Les opérateurs en VBA : tout ce que vous devez savoir pour devenir un as du code !
Salut les codeurs en herbe ! Aujourd’hui, on va plonger dans le monde fascinant des opérateurs en VBA. Ces petits symboles magiques sont essentiels pour faire des calculs, des comparaisons et bien plus encore dans vos macros Excel. Alors, attachez vos ceintures, on décolle !
Les opérateurs arithmétiques : quand les maths s’invitent dans votre code
Commençons par les basiques : les opérateurs arithmétiques. Ce sont vos meilleurs amis pour faire des calculs en VBA.
- + : L’addition, comme au bon vieux temps de l’école primaire !
- – : La soustraction, pour quand vous voulez enlever des trucs.
- * : La multiplication, parce que parfois, ajouter ne suffit pas.
- / : La division, attention aux divisions par zéro, ça pique !
- ** : La division entière, pour les fans de nombres entiers.
- Mod : Le modulo, pour avoir le reste d’une division (super utile, vous verrez).
- ^ : L’exponentiation, pour les maths de ouf.
Exemple pour tester :
Sub TestOperateursArithmetiques()
Dim resultat As Double
resultat = 10 + 5 ' Addition
Debug.Print "10 + 5 = " & resultat
resultat = 20 - 7 ' Soustraction
Debug.Print "20 - 7 = " & resultat
resultat = 6 * 8 ' Multiplication
Debug.Print "6 * 8 = " & resultat
resultat = 100 / 4 ' Division
Debug.Print "100 / 4 = " & resultat
resultat = 17 \ 3 ' Division entière
Debug.Print "17 \ 3 = " & resultat
resultat = 17 Mod 3 ' Modulo
Debug.Print "17 Mod 3 = " & resultat
resultat = 2 ^ 8 ' Exponentiation
Debug.Print "2 ^ 8 = " & resultat
End Sub
Les opérateurs de comparaison : pour jouer au jeu des différences
Maintenant, passons aux opérateurs de comparaison. Ils sont super utiles quand vous voulez comparer des trucs dans votre code.
- = : Égal à. Pas d’embrouille ici.
- <> : Différent de. Pour quand c’est pas pareil, quoi.
- > : Plus grand que. Pour les concours de taille.
- < : Plus petit que. L’inverse du précédent, logique.
- >= : Plus grand ou égal à. Pour être sympa avec les ex-aequo.
- <= : Plus petit ou égal à. Pareil, mais dans l’autre sens.
Exemple pour tester :
Sub TestOperateursComparaison()
Dim a As Integer, b As Integer
a = 10
b = 5
Debug.Print "a = " & a & ", b = " & b
Debug.Print "a = b : " & (a = b)
Debug.Print "a <> b : " & (a <> b)
Debug.Print "a > b : " & (a > b)
Debug.Print "a < b : " & (a < b)
Debug.Print "a >= b : " & (a >= b)
Debug.Print "a <= b : " & (a <= b)
End Sub
Les opérateurs logiques : pour les pros de la logique
Les opérateurs logiques, c’est pour quand vous voulez faire des trucs un peu plus complexes avec vos conditions.
- And : Pour quand vous voulez que TOUT soit vrai.
- Or : Pour quand au moins un truc doit être vrai.
- Not : Pour inverser une condition. C’est le rebelle du groupe.
- Xor : L’un ou l’autre, mais pas les deux. Le choix cornélien du code.
Exemple pour tester :
Sub TestOperateursLogiques()
Dim a As Boolean, b As Boolean
a = True
b = False
Debug.Print "a = " & a & ", b = " & b
Debug.Print "a And b : " & (a And b)
Debug.Print "a Or b : " & (a Or b)
Debug.Print "Not a : " & (Not a)
Debug.Print "a Xor b : " & (a Xor b)
End Sub

Les opérateurs de concaténation : pour les pros du collage de texte
En VBA, on a deux façons de coller des bouts de texte ensemble :
- & : Le pro de la colle, il assemble tout ce que vous voulez.
- + : Il fait pareil, mais attention, il peut faire des calculs si vous lui donnez des nombres !
Exemple pour tester :
Sub TestOperateursConcatenation()
Dim texte1 As String, texte2 As String
texte1 = "Hello"
texte2 = "World"
Debug.Print texte1 & " " & texte2
Debug.Print texte1 + " " + texte2
End Sub
La priorité des opérateurs : l’ordre dans le chaos
Comme en maths, il y a un ordre pour exécuter les opérations. Voici le truc à retenir :
- Parenthèses (elles passent toujours en premier)
- Exponentiation (^)
- Multiplication et division (*, /, \, Mod)
- Addition et soustraction (+, -)
- Comparaisons (<, >, =, etc.)
- Not
- And
- Or
Exemple pour tester :
Sub TestPrioriteOperateurs()
Dim resultat As Double
resultat = 2 + 3 * 4 ' La multiplication est prioritaire
Debug.Print "2 + 3 * 4 = " & resultat
resultat = (2 + 3) * 4 ' Les parenthèses changent tout
Debug.Print "(2 + 3) * 4 = " & resultat
resultat = 2 ^ 3 * 2 ' L'exponentiation est prioritaire sur la multiplication
Debug.Print "2 ^ 3 * 2 = " & resultat
End Sub
Voilà, vous êtes maintenant incollable sur les opérateurs en VBA ! N’hésitez pas à jouer avec ces exemples et à les modifier pour bien comprendre comment tout ça fonctionne. Et rappelez-vous, la pratique fait le maître. Alors codez, codez, et codez encore !
Pour aller plus loin, jetez un œil à notre article sur les bases de VBA : Découvrir VBA. Vous y trouverez plein d’autres astuces pour devenir un vrai pro du VBA !