Le debuggeur et les points d'arrets

Bonjour a tous,

Peut-on mettre un point d'arret conditionnel a la valeur d'une variable? en incluant dans mon sub un IF variable =x et en mettant un point d'arret la? la fenetre "exécution" peut elle servir pour ca?

Je viens de découvrir la fenetre "variable", ca peut aider

On peut faire beaucoup de choses avec les points d'arrêt. Le plus simple c'est de tester: Mettre le curseur sur la ligne qu'on veut "arrêter" et cliquer sur F9. Si un point apparaît, c'est que la ligne est compatible avec un point d'arrêt.

La fenêtre d'exécution permet d'afficher les messages de débogage:

Debug.Print variable
Debug.Print "On vient de rentrer dans cette étape" 

Si tu veux savoir le contenu d'une variable, il faut utiliser l'espion. Et oui c'est extrêmement utile!

capture

Bonjour

Un point d'arrêt possible si ton test est sur plusieurs lignes

  If x > 10 Then
    a = 2
  End If

Tu peux placer le point d'arrêt sur a=2

Ou alors tu peux faire

  If x > 10 Then Stop

La fenêtre Variables locales sert à analyser les variables utilisées dans ta macro

La fenêtre exécution sert afficher différentes informations, tu peux t'en servir dans ta macro en utilisant Debug.Print nom_de_ta_variable , ou directement en tapant ? nom_de_ta_variable

? = Print

Salut a vous deux, je viens d'essayer tout ca et c'est vraiment pratique.

Exécuter jusqu'au curseur, quel est la différence avec un point d'arret?

Le curseur de la souris? Il sert uniquement à placer le point d'arrêt au bon endroit c'est tout.

Tu parles peut-être de l'exécution pas à pas? (à part ça je vois pas ^^)

En pas à pas, c'est comme si tu mettais un point d'arrêt à chaque ligne compatible.

Je parle de CTRL F8, exécuter jusqu'au curseur: comment utiliser?

Bonjour,

Je parle de CTRL F8, exécuter jusqu'au curseur: comment utiliser?

On imagine que tu as mis un break en ligne 5 et que tu es arrêté dessus.

Tu cliques sur la ligne 15 pour y amener le curseur d'édition. Ctrl+F8 exécutera le code jusqu'à la ligne 15 comme si y tu y avais mis un break.

Le pas à pas sortant est très intéressant aussi

Pour revenir à ta 1ère question tu as aussi les espions.

Sélectionne ta variable ou une expression (ça peut être : long*larg*12) puis 'Ajouter un espion...', tu ajoutes =156 par exemple à l'expression et tu choisis 'Arrêt si la valeur est vraie'.

Si tu as affiché la fenêtre Espions tu peux y modifier directement la veleur d'arrêt ou l'expression. Tu peux aussi y glisser une expression sélectionnée dans le code.

eric

Si je comprend bien, ca fait comme si je mettais un 2ieme point d'arret et que je faisait F5, sauf que vu que je met un cuseur, ca arretera la juste une fois?

Quand tu testes ça fait quoi ?

OUPS, je glissais la fleche jaune plutot que de mettre le curseur de la souris a cet endroit.

Glisser la fleche jaune, ca fait quelque chose?

oui, tu changes la ligne qui sera exécutée

Merci a vous deux, pour ces conseils tres pratiques.

Rechercher des sujets similaires à "debuggeur points arrets"