Interrompre l'exécution d'une boucle

Description

nota : Pour interrompre manuellement une boucle ou un programme qui n'en fini plus, appuyer simultanément sur les touches"ctrl" et "pause".

Voici un exemple pour interrompre une boucle :
- on a deux boutons ("Lancer" et "Arreter").
- on déclare une variable Arret (true ou false).
- on demande l'exécution d'une boucle qui affiche la valeur de x dans le bouton "Lancer"
- on interrompt l'exécution de la boucle en cliquant sur "Arreter".

Source / Exemple :


Dim Arret As Boolean
    
Private Sub Arreter_Click()
    Arret = False
End Sub

Private Sub Lancer_Click()
Arret = True
x = 1
Do While x < 1000000
    Lancer.Caption = x
    If Arret = False Then
        Exit Do
    End If
x = x + 1
DoEvents
Loop
End Sub

Conclusion :


Il ne faut surtout pas omettre la commande "DoEvents", car elle interrompt
la boucle pour savoir si des commandes (clavier ou souris sont envoyées), sans lui, le click sur le bouton "Arreter" n'est pas pris en considération.

Codes Sources

A voir également

Vous n'êtes pas encore membre ?

inscrivez-vous, c'est gratuit et ça prend moins d'une minute !

Les membres obtiennent plus de réponses que les utilisateurs anonymes.

Le fait d'être membre vous permet d'avoir un suivi détaillé de vos demandes et codes sources.

Le fait d'être membre vous permet d'avoir des options supplémentaires.