I VBA kan du afslutte en Do -loop ved hjælp af Afslut Do kommando.
1 | Afslut Do |
Når udførelsen af kode kommer til Afslut Do, vil koden forlade Do -loop og fortsætte med den første linje efter loop.
Hvis du vil lære at afslutte en For -loop, skal du klikke på dette link: VBA Exit For
Afslut en sløjfe, når en betingelse er opfyldt
Du vil se i eksemplet herunder, hvordan du afslutter en Do -loop, når en bestemt betingelse er opfyldt. Vi vil loop og øge værdien af variablen i med 1 i hver iteration. Når det kommer til 6, vil vi forlade sløjfen og returnere en meddelelsesboks. Her er koden:
1234567891011 | Dim i As IntegerGør mens jeg <10i = i + 1Hvis i = 6 SåAfslut DoAfslut HvisSløjfeMsgBox "Værdien er" & i |
Først indtaster vi Do Loop, hvis værdien af i er mindre end 10:
123 | Gør mens jeg <10Sløjfe |
I loopens krop øger vi værdien af i med 1:
1 | i = i + 1 |
Derefter kontrollerer vi, om værdien af i er lig med 6, ved hjælp af kommandoen If. Hvis værdien er 6, forlader vi Do -loop og går til den første linje efter loop:
123 | Hvis i = 6 SåAfslut DoAfslut Hvis |
Den første linje i koden, der vil blive eksekveret efter afslutning af Do -loop, er meddelelsesboksen med værdien i:
1 | MsgBox "Værdien er" & i |
Hvis du udfører denne kode i Fejlretningstilstand, vil du se, at det vil gå gennem løkken 6 gange. I den 6th iteration, værdien af variablen i bliver 6, og koden indtastes i If -brødteksten. Nu er Do -loopens krop forladt. Derefter vises MsgBox pop-ups med værdien i: