PaliSkill
Introduction au VBA

Leçon 9 / 9 — Chapitre 4: Interaction, fonctions et automatisation

Déboguer une macro pas à pas avec F8

Quand une macro produit un résultat inattendu, relire le code des yeux ne suffit pas toujours à repérer le problème. VBA permet d'exécuter une macro LIGNE PAR LIGNE, en observant l'état des variables à chaque étape — un outil de débogage indispensable pour comprendre précisément où un comportement diverge de ce qui était attendu.

Lancer l'exécution pas à pas

Placer le curseur à l'intérieur d'une Sub dans l'éditeur VBA, puis appuyer sur F8 : la première ligne exécutable se surligne en jaune, sans encore s'exécuter. Appuyer à nouveau sur F8 exécute cette ligne puis surligne la suivante, et ainsi de suite, une ligne à la fois.

Observer la valeur des variables en cours d'exécution

Pendant une exécution pas à pas, survoler le nom d'une variable avec la souris affiche une info-bulle avec sa valeur actuelle. La fenêtre Espions locaux (menu Affichage > Espions locaux) affiche en permanence toutes les variables de la Sub en cours et leur valeur, mise à jour à chaque F8.

Placer un point d'arrêt (breakpoint)

Cliquer dans la marge grise à gauche d'une ligne (ou appuyer sur F9 sur cette ligne) place un point d'arrêt : lancer la macro normalement avec F5 exécute alors tout le code normalement jusqu'à cette ligne, puis s'arrête et bascule en mode pas à pas à partir de là — utile pour ne pas devoir appuyer sur F8 des dizaines de fois avant d'atteindre la zone de code à examiner.

Terminer l'exécution pas à pas

Appuyer sur F5 à tout moment reprend une exécution normale jusqu'à la fin de la macro (ou jusqu'au prochain point d'arrêt).

Exemple concret : une macro de calcul de total renvoie systématiquement 0, alors que les cellules contiennent bien des valeurs. Exécuter la macro pas à pas avec F8, en observant la valeur de la variable total à chaque tour de boucle, révèle que la boucle ne parcourt en réalité aucune ligne — la plage de cellules ciblée était mal définie.

À vous de jouer : dans vos propres mots, décrivez comment vous utiliseriez F8 et la fenêtre Espions locaux pour comprendre pourquoi une boucle censée s'exécuter 10 fois ne s'exécute en réalité qu'une seule fois.

🔒

Continuez ce module

Débloquez les leçons restantes ainsi que la certification finale.

2 500 XOF / 3,81 € / 4,15 $

Débloquez les 76 leçons restantes de ce module

Votre paiement est vérifié avant l'activation de l'accès