Microsoft® Visual Basic® Scripting Edition Do...Loop, instruction |
Référence du langage Version 1 |
Description
Répète un bloc d'instructions tant qu'une condition est True ou jusqu'à ce qu'une condition devienne True.
Syntaxe
Do [{While | Until} condition]
[statements]
[Exit Do]
[statements]
LoopVous pouvez aussi utiliser la syntaxe suivante :
Do
[statements]
[Exit Do]
[statements]
Loop [{While | Until} condition]La syntaxe de l'instruction Do...Loop comprend les éléments suivants :
Élément Description condition Expression numérique ou expression de chaîne qui est True ou False. Si condition est Null, l'élément condition est traité comme False. statements Une ou plusieurs instructions qui sont répétées tant que l'élément condition est True, ou jusqu'à ce qu'il le devienne.
Notes
L'instruction Exit Do ne peut être utilisée que dans une structure de contrôle Do...Loop afin de proposer un solution alternative pour quitter une instruction Do...Loop. Vous pouvez placer autant d'instructions Exit Do que vous voulez n'importe où dans l'instruction Do...Loop. Souvent utilisée avec l'évaluation d'une condition (par exemple, l'instruction If...Then), l'instruction Exit Do transfère le contrôle à l'instruction qui suit immédiatement Loop.Quand elle est utilisée à l'intérieur d'instructions Do...Loop imbriquées, l'instruction Exit Do transfère le contrôle à la boucle située au niveau d'imbrication supérieur à celui de la boucle dans laquelle elle se déroule.
L'exemple ci-dessous illustre l'utilisation de l'instruction Do...Loop :
Do Until DefResp = vbNo MyNum = Int (6 * Rnd + 1) ' Génère un entier aléatoire entre 1 et 6. DefResp = MsgBox (MyNum & " Voulez-vous un autre nombre?", vbYesNo) Loop Dim Check, Counter Check = True: Counter = 0 ' Initialise les variables. Do ' Boucle externe. Do While Counter < 20 ' Boucle interne. Counter = Counter + 1 ' Incrémente le compteur. If Counter = 10 Then ' Si la condition vaut True... Check = False ' Affecte la valeur False à l'indicateur. Exit Do ' Quitte la boucle interne. End If Loop Loop Until Check = False ' Quitte immédiatement la boucle externe.