Comment déboguer une macro VBA sous Excel ?

Vous venez de finir le développement de votre dernière macro VBA, vous en êtes très fier, seulement voilà, une erreur s’est glissée dans le code que vous aviez si soigneusement rédigé ! Voici quelques conseils pour détecter et corriger rapidement l’instruction à l’origine d’un bug sous VBA.

Eviter les erreurs de syntaxe grâce au correcteur

L’erreur de syntaxe est la plus courante, heureusement c’est aussi la plus simple à corriger grâce à la fonction automatique de correction proposée par l’éditeur VBA. Pour l’activer, il vous suffit d’ouvrir Visual Basic Editor puis de vous rendre dans les préférences Excel.

Lors de l’écriture de vos prochaines lignes de code, si vous commettez une erreur de syntaxe, le correcteur affichera un message d’erreur et vous invitera à la corriger. Une erreur de syntaxe classique se présentera sous la forme d’une faute de frappe lors de l’écriture d’un mot-clef ou de l’oubli d’un mot-clef lors d’une série d’instructions.

La compilation de votre code VBA vous permet de vérifier l’exactitude de sa syntaxe et de le préparer pour son exécution.

Déboguer les erreurs d’exécution ou de logique

Une fois l’erreur de syntaxe écartée suite à la compilation de votre code, il ne vous restera plus que deux types d’erreur à éviter : l’erreur d’exécution et l’erreur logique.

L’erreur d’exécution se manifeste lorsque votre programme tente d’effectuer une opération impossible. Par exemple, si vous cherchez à ouvrir un fichier qui n’existe pas. Dans ce cas, une fenêtre automatique vous indiquera l’erreur d’exécution rencontrée.

L’erreur de logique se manifeste quant à elle lorsque vous programme tourne correctement, mais qu’il ne remplit pas la fonction escomptée.

L’exécution pas à pas et les points d’arrêt

Pour localiser la ligne de code à l’origine d’une erreur d’exécution, vous pouvez choisir d’exécuter votre programme « pas à pas », c’est-à-dire ligne après ligne, afin de détecter la ligne de code à l’origine du dysfonctionnement.

Le positionnement d’un point d’arrêt dans votre programme, vous permet également de marquer une pause dans l’exécution de votre programme sur une ligne de code bien précise.

L’utilisation de la fenêtre « Espions »

Afin de détecter les erreurs de logique, vous pouvez faire appel à la fenêtre « Espions » pour connaître la valeur d’une propriété ou d’une variable et suivre son évolution tout au long de l’exécution de votre programme. D’un usage similaire, la fenêtre d’exécution permet de connaître la valeur d’une propriété ou d’une variable à un instant donné.

Plus d'articles

La balance des paiements

Document de comptabilité nationale d’une importance cruciale, la balance des paiements est utilisée aussi bien par les gouvernements que par les banques centrales pour piloter

Lire plus »

FED : Colombes et Faucons

La Banque Centrale Américaine ou Federal Reverse (FED), fondée en 1913 et indépendante politiquement de l’Etat Fédéral, est conduite par le Président et les gouverneurs

Lire plus »

La Journée des 3 sorcières

Tous les troisièmes vendredis du mois, les marchés financiers connaissent une journée particulièrement technique et souvent volatile appelée la Journée des 3 sorcières. Cette séance

Lire plus »

Qu’est-ce qu’un Gap ?

L’anglicisme « gap » désigne un espace de cotation laissé vierge entre deux périodes. Ces discontinuités graphiques matérialisent l’absence de transaction entre acheteurs et vendeurs sur une fourchette de

Lire plus »

La volatilité de Parkinson

La mesure classique de la volatilité historique à l’aide de l’Ecart-Type tient uniquement compte des niveaux d’ouverture et de clôture de chaque période considérée, mais

Lire plus »