En VBA, vous pouvez quitter une boucle Do en utilisant le Quitter Faire commander.
1 | Quitter Faire |
Lorsque l'exécution du code vient à Quitter Faire, le code quittera la boucle Do et continuera avec la première ligne après la boucle.
Si vous voulez savoir comment quitter une boucle For, cliquez sur ce lien : VBA Exit For
Quitter une boucle lorsqu'une condition est remplie
Vous verrez dans l'exemple ci-dessous comment sortir d'une boucle Do lorsqu'une certaine condition est remplie. Nous bouclerons et incrémenterons la valeur de la variable i de 1 à chaque itération. Quand il s'agit de 6, nous voulons quitter la boucle et renvoyer une boîte de message. Voici le code :
1234567891011 | Diminuer en tant qu'entierFaire pendant que je < 10je = je + 1Si je = 6 AlorsQuitter FaireFin siBoucleMsgBox "La valeur est " & i |
Tout d'abord, nous entrons dans la boucle Do si la valeur de i est inférieure à 10 :
123 | Faire pendant que je < 10Boucle |
Dans le corps de la boucle, on incrémente la valeur de i de 1 :
1 | je = je + 1 |
Après cela, nous vérifions si la valeur de i est égale à 6, en utilisant la commande If. Si la valeur est 6, nous sortons de la boucle Do et allons à la première ligne après la boucle :
123 | Si je = 6 AlorsQuitter FaireFin si |
La première ligne du code qui sera exécutée après avoir quitté la boucle Do est la boîte de message avec la valeur i :
1 | MsgBox "La valeur est " & i |
Si vous exécutez ce code dans Mode débogage, vous verrez qu'il parcourra la boucle 6 fois. Dans le 6e itération, la valeur de la variable i devient 6 et le code entre dans le corps If. Maintenant, le corps de la boucle Do est quitté. Après cela, les fenêtres contextuelles MsgBox avec la valeur i :