Skip to content
Excel - Power Query - Power Pivot - VBA
  • Pages
    • Excel - Power Query - Power Pivot - VBA
    • Raccourcis clavier
    • Généralités
      • Quel stage Excel choisir ?
        • Parcours de formation Excel
        • Une démarche BI avec Excel ?
        • Excel, VBA ou Power Pivot / Query / BI ?
      • Installation des outils
    • Manipulations de bases
      • Gestion des feuilles
      • Formater les cellules
      • Lignes et colonnes
      • Trier et filtrer
    • Temps 1 | Organiser ses données en tableau
      • Concevoir un tableau
      • Tableau dans Excel
    • Temps 2 | Saisir et importer
      • Valider ses données
      • Protéger les données
      • Mise en forme conditionnelle
      • Types de données (tables recommandées)
    • Temps 3 | Calculer
      • Calculs
      • Fonctions de texte
      • Fonctions de date
      • Fonctions logiques
      • Fonctions de synthèse
      • Fonction de recherche
      • Fonctions d'information
      • Formules matricielles ou Tableaux dynamiques [365]
      • Nouvelles fonctions [365]
    • Temps 4 | Présenter et synthétiser
      • Mise en forme avec les styles
      • Mise en page et impression
      • Tableaux croisées dynamiques
        • TCD multi tables
      • Graphiques croisés dynamiques
    • A à Z : créer un classeur d'analyse [Exemple 002]
    • Power Query
    • Power Pivot
      • Présentation
      • Mise en pratique
      • Exercice 01
    • VBA
      • Visual Basic
        • Visual Basic Editor
        • Variables
        • Décisions
        • Boucles
        • Fonctions
          • Quelques fonctions intrinsèques
        • icon picker
          Organisation du code
        • Procédures
      • VB Excel
        • Objets Excel
        • Classeurs
        • Feuilles
        • Plages et cellules
        • Tableaux
        • Fonctionnalités d'Excel
        • SQL & VBA
        • Boucle des fichiers d'un dossier
        • Manipuler d'autres logiciels depuis Excel
      • Créer une application Excel
      • API REST avec JSON
      • Exercice Signalements
    • Exercices
      • Excel 1 |
    • Office Script
    • Office Scripts pour Excel : Comparaison avec VBA
    • Échanges stagiaires

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
* / + -
Les quatres opérateurs arithmétiques
\
Divise deux nombres et retourne un entier. c = 3 \ 2 c contient 1
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
Opérateurs de comparaison
Opérateur
Description
> >= < <= <> =
Les opérateurs classiques
Is
Compare deux objets
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
Opérateurs de concaténation
Opérateur
Description
&
Concatène deux chaines
+
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
Opérateurs logiques
Opérateur
Description
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
Not
Permet d'établir la négation logique d'une expression. a = Not b
There are no rows in this table

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 ··· in the right corner or using a keyboard shortcut (
CtrlP
) instead.