Excel - Power Query - Power Pivot - VBA
Visual Basic

icon picker
Organisation du code

Commentaires

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
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
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
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
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 (
CtrlP
) instead.