Faire... Loop, instruction
Répète un bloc d’instructions tant qu’une condition est True ou jusqu’à ce qu’elle devienne True.
Syntaxe
Do [{ While | Until } condition ] [ instructions ] [ Exit Do ] [ instructions ] Loop
Vous pouvez aussi utiliser cette syntaxe :
Do [ instructions ] [ Exit Do ] [ instructions ] Loop [{ While | Until } condition ]
La syntaxe de l’instruction Do Loop comprend les éléments suivants :
Élément | Description |
---|---|
condition | Facultatif. Expression numérique ou expression de chaîne qui est True ou False. Si condition est Null, condition est traitée comme False. |
statements | Une ou plusieurs instructions répétées tant que la condition est True, ou jusqu’à ce qu’elle le soit. |
Remarques
N’importe quel nombre d’instructions Exit Do peuvent être placées n’importe où dans le do... Loop comme autre moyen de quitter un do... Loop. Exit Do est souvent utilisé lors de l’évaluation d’une condition, par exemple, If…Then, auquel cas l’instruction Exit Do transfère le contrôle à l’instruction qui suit immédiatement Loop.
Lorsqu’elle est utilisée au sein d’instructions Do…Loop imbriquées, l’instruction Exit Do transfère le contrôle à la boucle qui est imbriquée un niveau au-dessus de la boucle où Exit Do se produit.
Exemple
Cet exemple montre comment les instructions Do...Loop peuvent être utilisées. Le do interne... Loop instruction boucle 10 fois, demande à l’utilisateur si elle doit continuer, définit la valeur de l’indicateur sur False quand il sélectionne Non et se termine prématurément à l’aide de l’instruction Exit Do. La boucle extérieure quitte immédiatement après la vérification de la valeur de l'indicateur.
Public Sub LoopExample()
Dim Check As Boolean, Counter As Long, Total As Long
Check = True: Counter = 0: Total = 0 ' Initialize variables.
Do ' Outer loop.
Do While Counter < 20 ' Inner Loop
Counter = Counter + 1 ' Increment Counter.
If Counter Mod 10 = 0 Then ' Check in with the user on every multiple of 10.
Check = (MsgBox("Keep going?", vbYesNo) = vbYes) ' Stop when user click's on No
If Not Check Then Exit Do ' Exit inner loop.
End If
Loop
Total = Total + Counter ' Exit Do Lands here.
Counter = 0
Loop Until Check = False ' Exit outer loop immediately.
MsgBox "Counted to: " & Total
End Sub
Voir aussi
Assistance et commentaires
Avez-vous des questions ou des commentaires sur Office VBA ou sur cette documentation ? Consultez la rubrique concernant l’assistance pour Office VBA et l’envoi de commentaires afin d’obtenir des instructions pour recevoir une assistance et envoyer vos commentaires.