Excel Exercice
Tout savoir sur Excel
  • YouTube
  • Instagram
  • TikTok
  • Facebook
RSS
  • Quiz
  • Formation
  • Exercices
  • Tous les articles
  • Boutique
  • 0 Article
  • Se connecter
    • ↩ Se déconnecter

Analyseur de code VBA – Rubberduck

Catégorie : VBA
Dernière mise à jour le 19/06/2026
Temps de lecture : 4 minutes
13 047

Pour vous simplifier l'analyse de vos programmes VBA, Rubberduck est un outil qui s'installe dans votre éditeur VBA et qui va rajouter des options d'analyse supplémentaires.

C'est quoi Rubberduck ?

Rubberduck est un outil open source qui permet l'analyse du code VBA de vos projets. Vous le téléchargez depuis le site GitHub. Le projet est dirigé par Mathieu Guindon (MVP Excel 😎).

Pour obtenir les dernières sources béta, il vous suffit de cliquer sur le bouton Releases sur le site GitHub.

Interface GitHub pour télécharger les dernières mises à jour de Rubberduck

Comment déboguer un projet VBA ?

Avant de vous montrer ce que l'outil Rubberduck vous apporte, la vidéo suivante vous montre comment débuguer un programme VBA.

Comment ça marche ?

Après l'installation de Rubberduck, vous avez un nouveau menu qui apparaît dans le Visual Basic Editor. Seulement, au démarrage, tous les menus sont grisés 🤨😕

En fait, pour commencer à travailler avec cet outil, il faut commencer par le lancer. Pour cela, il faut cliquer sur le bouton "En attente" dans la barre d'icônes.

Bouton "En attente" dans la barre d'icônes

Le fait de cliquer sur ce bouton "En attente" va lancer un certains nombres de processus d'analyse.

Vous pouvez suivre l'avancé de ces processus dans la barre d'icônes.

Le traitement prend plus ou moins de temps selon la taille de votre projet. Quand c'est terminé, un bouton "Prêt" s'affiche alors dans la barre d'icônes.

A la fin du processus, tous les menus sont  accessibles 😃

Il n'y a plus de menus grisés

Indenter automatiquement le code

Ce qui rend un code particulièrement illisible c'est qu'il n'est pas indenté. Indenter un programme signifie que le contenu d'une boucle ou d'une condition est écrit en retrait par rapport au niveau supérieur.

Pour vous éviter de devoir rajouter des tabulations manuellement partout pour indenter votre code, Rubberduck est la solution.

  • Activer le menu Rubberduck > Indenter
  • Sélectionner dans le menu Indenter soit
    • la procédure courante (là où est votre curseur)
    • le module courant
    • tout votre projet (tous les modules)

En une seule action, tout votre code est indenté 😍😍😍

Analyse du code

Un autre intérêt de cet outil c'est d'analyser votre code et de vous aider à le corriger ou l'améliorer facilement 😮❤

  • Activer le menu Rubberduck > Inspections
Résultat de l'analyse faite par RubberDuck

La fenêtre s'ouvre immédiatement car l'analyse a déjà été faite quand vous avez cliqué sur le bouton "En attente"

Quand vous double-cliquez sur l'une des lignes de l'inspection, Rubberduck se positionne à cet endroit dans le code. Vous avec donc la ligne de code en arrière-plan et la boite de dialogue "Inspection" qui reste visible au premier plan. C'est très astucieux 😎

Pour comprendre la raison pour laquelle l'outil vous conseille une modification ou une correction, il vous suffit de cliquer sur le bouton "Régler".

De cette façon, vous pouvez accepter, ou pas, la correction proposée.

Près de 75 règles de codage sont répertoriées. Si vous souhaitez que Rubberduck n'en prennent pas certaines en compte dans l'analyse, il vous suffit de changer les paramètres en cliquant sur la molette à droite (tout à droite du bouton "Régler")

Pour changer une règle, il vous suffit de

  1. Sélectionner le menu Inspection
  2. Choisir l'une des options
  3. Double-cliquez sur le statut d'une règle pour le modifier

Saisie intelligente

La dernière version de Rubberduck est enrichie dela saisie intelligente.

En fait, quand vous saisissez le début d'une instruction, comme If, While, For ou autre, Rubberduck écrit automatiquement l'instruction de fin.

Tous les blocs ont été fermés automatiquement

Par exemple, si vous écrivez If, End If sera automatiquement ajouté. Comme cela, il n'y a plus d'erreur de compilation du code si un bloc n'est pas fermé.

Frédéric LE GUEN

Macro VBA

3 commentaires

  1. Laurent Ghirardi
    30/01/2019 @ 15:46

    Bonjour,

    savez-vous s'il est possible de faire une copie d'un classeur Excel sans y inclure RubberDuck (au demeurant un excellent logiciel très précieux!!) avant de transmettre ce classeur.

    Merci pour votre réponse

    Bien cordialement

    Répondre

  2. LG
    14/12/2018 @ 14:42

    Bonjour,, .

    j'ai téléchargé Rubberduck et installé ( à 2 reprises au moins )

    il apparait biens dans le menu, mais à la place de "en attente le message "Erreur d'analyse" apparait !

    Je travailles sous Excel 365, Microsoft VBA version 7.1 - WIN 10.

    Pourriez-vous m'indiquer la manip suivre pour régler ce problème.

    Merci pour votre aide.
    Cordiale

    Répondre

    • Frédéric LE GUEN
      17/12/2018 @ 16:42

      Bonjour,
      Je ne travaille pas directement sur ce projet. Il faut contacter Mathieu Guindon depuis le site Github pour ce genre de problème

      Répondre

Laisser un commentaire Annuler la réponse

Votre adresse e-mail ne sera pas publiée. Les champs obligatoires sont indiqués avec *

Ce site utilise Akismet pour réduire les indésirables. En savoir plus sur la façon dont les données de vos commentaires sont traitées.

Articles les plus consultés

  1. Comparer deux colonnes dans Excel
  2. Création d’un calendrier automatique avec Excel
  3. Excel gratuit depuis un navigateur
  4. Changer la couleur à partir du résultat d’une formule dans Excel
  5. Fonction SI dans Excel
  6. Fonction DATE – ANNEE – MOIS – JOUR dans Excel
  7. Créer un diagramme de Gantt avec Excel
  8. Fonction RECHERCHEV avec Excel
  9. Pyramide des âges avec Excel
  10. Quiz pour débutant
  11. La Fonction NB.SI.ENS d’Excel
  12. Calcul avec des heures dans Excel
  13. Comment regrouper par date dans un tableau croisé dynamique
  14. Comment faire des SI imbriqués dans Excel
  15. Format des dates dans Excel
image exercice site

Newsletter

1 fois par mois :
Astuces et quiz

    Nous ne vous enverrons pas de spam. Vous pouvez vous désabonner à tout moment.

    Built with Kit

    Analyseur de code VBA – Rubberduck

    Reading time: 4 minutes
    13 047
    Dernière mise à jour le 19/06/2026

    Pour vous simplifier l'analyse de vos programmes VBA, Rubberduck est un outil qui s'installe dans votre éditeur VBA et qui va rajouter des options d'analyse supplémentaires.

    C'est quoi Rubberduck ?

    Rubberduck est un outil open source qui permet l'analyse du code VBA de vos projets. Vous le téléchargez depuis le site GitHub. Le projet est dirigé par Mathieu Guindon (MVP Excel 😎).

    Pour obtenir les dernières sources béta, il vous suffit de cliquer sur le bouton Releases sur le site GitHub.

    Interface GitHub pour télécharger les dernières mises à jour de Rubberduck

    Comment déboguer un projet VBA ?

    Avant de vous montrer ce que l'outil Rubberduck vous apporte, la vidéo suivante vous montre comment débuguer un programme VBA.

    Comment ça marche ?

    Après l'installation de Rubberduck, vous avez un nouveau menu qui apparaît dans le Visual Basic Editor. Seulement, au démarrage, tous les menus sont grisés 🤨😕

    En fait, pour commencer à travailler avec cet outil, il faut commencer par le lancer. Pour cela, il faut cliquer sur le bouton "En attente" dans la barre d'icônes.

    Bouton "En attente" dans la barre d'icônes

    Le fait de cliquer sur ce bouton "En attente" va lancer un certains nombres de processus d'analyse.

    Vous pouvez suivre l'avancé de ces processus dans la barre d'icônes.

    Le traitement prend plus ou moins de temps selon la taille de votre projet. Quand c'est terminé, un bouton "Prêt" s'affiche alors dans la barre d'icônes.

    A la fin du processus, tous les menus sont  accessibles 😃

    Il n'y a plus de menus grisés

    Indenter automatiquement le code

    Ce qui rend un code particulièrement illisible c'est qu'il n'est pas indenté. Indenter un programme signifie que le contenu d'une boucle ou d'une condition est écrit en retrait par rapport au niveau supérieur.

    Pour vous éviter de devoir rajouter des tabulations manuellement partout pour indenter votre code, Rubberduck est la solution.

    • Activer le menu Rubberduck > Indenter
    • Sélectionner dans le menu Indenter soit
      • la procédure courante (là où est votre curseur)
      • le module courant
      • tout votre projet (tous les modules)

    En une seule action, tout votre code est indenté 😍😍😍

    Analyse du code

    Un autre intérêt de cet outil c'est d'analyser votre code et de vous aider à le corriger ou l'améliorer facilement 😮❤

    • Activer le menu Rubberduck > Inspections
    Résultat de l'analyse faite par RubberDuck

    La fenêtre s'ouvre immédiatement car l'analyse a déjà été faite quand vous avez cliqué sur le bouton "En attente"

    Quand vous double-cliquez sur l'une des lignes de l'inspection, Rubberduck se positionne à cet endroit dans le code. Vous avec donc la ligne de code en arrière-plan et la boite de dialogue "Inspection" qui reste visible au premier plan. C'est très astucieux 😎

    Pour comprendre la raison pour laquelle l'outil vous conseille une modification ou une correction, il vous suffit de cliquer sur le bouton "Régler".

    De cette façon, vous pouvez accepter, ou pas, la correction proposée.

    Près de 75 règles de codage sont répertoriées. Si vous souhaitez que Rubberduck n'en prennent pas certaines en compte dans l'analyse, il vous suffit de changer les paramètres en cliquant sur la molette à droite (tout à droite du bouton "Régler")

    Pour changer une règle, il vous suffit de

    1. Sélectionner le menu Inspection
    2. Choisir l'une des options
    3. Double-cliquez sur le statut d'une règle pour le modifier

    Saisie intelligente

    La dernière version de Rubberduck est enrichie dela saisie intelligente.

    En fait, quand vous saisissez le début d'une instruction, comme If, While, For ou autre, Rubberduck écrit automatiquement l'instruction de fin.

    Tous les blocs ont été fermés automatiquement

    Par exemple, si vous écrivez If, End If sera automatiquement ajouté. Comme cela, il n'y a plus d'erreur de compilation du code si un bloc n'est pas fermé.

    Étiquettes : Macro VBA
    Frédéric LE GUEN

    Newsletter

    1 fois par mois :
    Astuces et quiz

      Nous ne vous enverrons pas de spam. Vous pouvez vous désabonner à tout moment.

      Built with Kit

      3 commentaires

      1. Laurent Ghirardi
        30/01/2019 @ 15:46

        Bonjour,

        savez-vous s'il est possible de faire une copie d'un classeur Excel sans y inclure RubberDuck (au demeurant un excellent logiciel très précieux!!) avant de transmettre ce classeur.

        Merci pour votre réponse

        Bien cordialement

        Répondre

      2. LG
        14/12/2018 @ 14:42

        Bonjour,, .

        j'ai téléchargé Rubberduck et installé ( à 2 reprises au moins )

        il apparait biens dans le menu, mais à la place de "en attente le message "Erreur d'analyse" apparait !

        Je travailles sous Excel 365, Microsoft VBA version 7.1 - WIN 10.

        Pourriez-vous m'indiquer la manip suivre pour régler ce problème.

        Merci pour votre aide.
        Cordiale

        Répondre

        • Frédéric LE GUEN
          17/12/2018 @ 16:42

          Bonjour,
          Je ne travaille pas directement sur ce projet. Il faut contacter Mathieu Guindon depuis le site Github pour ce genre de problème

          Répondre

      Laisser un commentaire Annuler la réponse

      Votre adresse e-mail ne sera pas publiée. Les champs obligatoires sont indiqués avec *

      Ce site utilise Akismet pour réduire les indésirables. En savoir plus sur la façon dont les données de vos commentaires sont traitées.

      À propos
      Contact
      Mentions légales
      CGV

      © 2002 – 2026 – https://excel-exercice.com. Tous droits réservés.
      Site géré par le majordome du net

      À propos
      Contact
      Mentions légales
      CGV

      © 2026 – https://excel-exercice.com. Tous droits réservés.
      Site géré par le majordome du net