Boucle qui s'embale

Résolu/Fermé
Tessel75 - 12 août 2021 à 16:20
 Tessel75 - 13 août 2021 à 00:02
Bonjour,
Comment arrêter une boucle Do ... loop until ... qui s'emballe et tourne sans fin . Il a-t-il une autre méthode que "Fin de tâche via le gestionnaire de tâche. Merci pour votre aide.


Configuration: Windows / Firefox 90.0

3 réponses

jee pee Messages postés 39695 Date d'inscription mercredi 2 mai 2007 Statut Modérateur Dernière intervention 5 mai 2024 9 258
12 août 2021 à 16:31
Bonjour,

C'est le until qui joue ce role, il faut une condition dont on est certain qu'à un moment donné elle sera remplie.
0
Merci pour ta réponse, mais elle ne répond pas vraiment à la question posée, parce que justement c'est ma condition Until qui était mal calibrée et qui a fait que la boucle s'est emballée, et qu'il a fallu que j'interrompe tout le processus Excel pour que la boucle s'arrête.
0
diablo13800 Messages postés 2890 Date d'inscription jeudi 2 juillet 2015 Statut Membre Dernière intervention 16 février 2024 1 844
12 août 2021 à 16:50
Bonjour,

Plutot que Stopper le process, vous pouvez utilisez la combinaison CTRL + pause ( break) qui permet de stopper les macros en cours.
0
Merci pour cette suggestion que je ne connaissais pas. Malheureusement, ça ne marche pas dans le cas présent; sans doute parce qu'il s'agit là d'une boucle Do ... loop until ... . Désolé
0
Bonsoir à tous,
Je reviens vers vous parce que j'ai fini par trouver une méthode (que je connaissais mais que j'avais oubliée). Je l'indique pour que cela puisse servir à qqu'un qui se trouverait devant le même problème .
Il suffit d'entrer dans la boucle un compteur du type " Cptr = Cptr + 1 ", ainsi il s'incrémente de 1 à chaque itération, et après il suffit d'indiquer à combien d'itérations la boucle doit s'arrêter.
Par exemple pour la boucle que j'indiquais ici, on aura qqch du genre :

Do
......
Cptr = Cptr + 1
Loop until ..... or Cptr > 100


Ainsi, la boucle s'arrête après 100 itérations.
Bonne soirée à tous.
0