Tout texte saisi précédé d’une apostrophe est mis en commentaire.
Par exemple un commentaire sur une ligne :
'Commentaire expliquant la variable a
Dim a
Un commentaire en bout de ligne :
Dim a 'Commentaire expliquant la variable a
Caractères de continuation
Pour écrire une instruction sur plusieurs lignes, ajoutez en bout de ligne un espace suivi du caractère _ (soulignement).
Retrait
Il est très important pour la lisibilité du code d’indenter les lignes. Dans cet exemple, nous imbriquons des boucles et des structures de décisions :
Function Macro1()
Dim a, b, c, d
For a=1 To 10
Select Case b
Case 1
c = 10
If a = 5 Then
c = 15
End if
Case 2
c = 20
Case Else
c = 30
End select
d = d + c
Next
End function
Opérateurs
Opérateurs arithmétiques
Opérateur
Description
Opérateur
Description
1
* / + -
Les quatres opérateurs arithmétiques
2
\
Divise deux nombres et retourne un entier.
c = 3 \ 2
c contient 1
3
Mod
Permet de diviser deux nombres en ne renvoyant que le reste.
c = 3 Mod 2
c contient 1
There are no rows in this table
3
Count
Opérateurs de comparaison
Opérateur
Description
Opérateur
Description
1
> >= < <= <> =
Les opérateurs classiques
2
Is
Compare deux objets
3
Like
Compare deux chaines de texte
Vous pouvez utiliser les caractères génériques * (pour tout caractère) et ? pour un caractère.
c = "aBBBa" Like "a*a" 'c contient True
c = "F" Like "[A-Z]" 'c contient True
There are no rows in this table
3
Count
Opérateurs de concaténation
Opérateur
Description
Opérateur
Description
1
&
Concatène deux chaines
2
+
Concatène deux chaines. Peut présenter une ambiguïté quant au résultat. Préférez toujours utiliser &.
There are no rows in this table
2
Count
Opérateurs logiques
Opérateur
Description
Opérateur
Description
1
And
Or
Jonction logique de deux expressions
Dim a, b, c, d
a = 10: b = 8: c = 6
d = a > b And b > c ' d renvoie True
d = b > a Or b > c ' d renvoie False
2
Not
Permet d'établir la négation logique d'une expression.
a = Not b
There are no rows in this table
2
Count
Gestion des erreurs
Masquer toute les erreurs
Masquer toute les erreurs dans la procédure jusqu’à la prochaine gestion d’erreur :
On Error Resume Next
Tester si une erreur s’est produite
If Err<>0 Then
Select Case Err
Case 123 'Numéro de l’erreur
...
Case 456
...
End Select
End if
Afficher toutes les erreurs
Afficher toutes les erreurs dans la suite de la procédure
On Error GoTo 0
Routine de gestion d’erreur
On utilise les étiquettes (un mot suivi d’un :)
Sub MaSub()
On Error GoTo GestionErreur
(code du sub)
'À la fin de la procédure
Fin:
ActiveWorkbook.Close SaveChanges:=False
Exit Sub
GestionErreur:
MsgBox "Erreur " & Err.Description, vbExclamation
GoTo Fin
End Sub
Want to print your doc? This is not the way.
Try clicking the ⋯ next to your doc name or using a keyboard shortcut (