I VBA kan du avsluta en For Loop med Avsluta för kommando.
1 | Avsluta för |
När körningen av koden kommer till Avsluta för, kommer den att avsluta en For -slinga och fortsätta med den första raden efter slingan.
Om du vill lära dig hur du avslutar en Do -loop, klicka på den här länken: VBA Exit Loop
Avsluta en For Loop när ett villkor är uppfyllt
Du kommer att se i exemplet hur du avslutar en For -loop när ett visst villkor är uppfyllt. Vi kommer att slinga och öka värdet på variabeln i med 1 i varje iteration. När det gäller 5 vill vi lämna slingan och returnera en meddelanderuta. Här är koden:
123456789 | Dim i As IntegerFör i = 1 till 10Om i = 5 DåAvsluta förAvsluta omNästa iMsgBox "Värdet är" & i |
Först anger vi For Loop om värdet på i är mindre än 10:
123 | För i = 1 till 10Nästa i |
Efter det kontrollerar vi om värdet på i är lika med 5, med hjälp av kommandot If. Om värdet är 5, lämnar vi For -slingan och går till den första raden efter slingan:
12345 | Om i = 5 DåAvsluta förAvsluta om |
Om villkoret inte är uppfyllt ökar följande sats i med 1 och går in i For -slingan igen:
1 | Nästa i |
Den första raden i koden som kommer att köras efter att du har lämnat For -slingan är meddelanderutan med värdet i:
1 | MsgBox "Värdet är" & i |
Om du kör den här koden i felsökningsläget ser du att den kommer att gå igenom slingan 5 gånger. I 5th iteration, värdet av variabeln i blir 5 och koden går in i If -kroppen. Nu är kroppen i For -slingan avslutad. Därefter kommer MsgBox popup-fönster med värdet i:
Bild 1. Exit For Loop -exempel