Instruction Do...Loop
Répète les instructions comprises entre les instructions Do et Loop tant que la condition est remplie (True) ou jusqu'à ce qu'elle le soit.
Syntaxe
Do [{While | Until} condition = True]
bloc d'instructions
[Exit Do]
bloc d'instructions
Loop
ou
Do
bloc d'instructions
[Exit Do]
bloc d'instructions
Loop [{While | Until} condition = True]
Paramètres/Éléments
Condition : comparaison, expression numérique ou expression au format chaîne de caractères dont l'évaluation donne soit True, soit False.
Bloc d'instructions : instructions à répéter tant que la condition reste remplie (True) ou jusqu'à ce qu'elle soit remplie.
L'instruction Do...Loop exécute une boucle tant qu'une certaine condition est remplie ou jusqu'à ce qu'elle le soit. La condition permettant de quitter la boucle doit être saisie à la suite de l'instruction Do ou de l'instruction Loop. Les exemples suivants constituent des combinaisons valides :
Syntaxe
Do While condition = True
...bloc d'instructions
Loop
Le bloc d'instructions compris entre les instructions Do While et Loop est répété tant que la condition reste remplie (True).
Do Until condition = True
...bloc d'instructions
Loop
Le bloc d'instructions compris entre les instructions Do Until et Loop est répété tant que la condition n'est pas remplie (False).
Do
...bloc d'instructions
Loop While condition = True
Le bloc d'instructions compris entre les instructions Do et Loop se répète tant que la condition est remplie (True).
Do
...bloc d'instructions
Loop Until condition = True
Le bloc d'instructions compris entre les instructions Do et Loop se répète jusqu'à ce que la condition soit remplie (True).
Servez-vous de l'instruction Exit Do pour mettre fin à la boucle sans condition. Vous pouvez ajouter cette instruction en n'importe quel point d'une instruction Do...Loop. Vous pouvez également définir une condition de sortie à l'aide de la structure If...Then, comme suit :
Do...
instructions
If condition = True Then Exit Do
instructions
Loop...
Exemple
Sub ExampleDoLoop
Dim sFile As String
Dim sPath As String
sPath = "c:\"
sFile = Dir$( sPath ,22)
If sFile <> "" Then
Do
MsgBox sFile
sFile = Dir$
Loop Until sFile = ""
End If
End Sub