Excel VBA Break For Loop

VBA Break används när vi vill lämna eller bryta den kontinuerliga slingan som har vissa fasta kriterier. För loop är inom räckvidden för att definiera uttalanden som körs upprepade gånger under ett fast antal tid. Ibland när vi använder något slingtillstånd i VBA, händer det ofta att koden fortsätter att köras utan slut eller brott. För att undvika denna typ av situationer rekommenderas det att använda några pauser eller avsluta funktioner där vi kan lämna slingan med den mätbara utgången från makroen.

Hur använder jag Excel VBA Break för slinga?

Vi kommer att lära dig att använda en VBA Break for Loop med några exempel i Excel.

Du kan ladda ner denna VBA Break For Loop Excel-mall här - VBA Break For Loop Excel Mall

Exempel 1 - VBA Break For Loop

Vi kommer att se ett exempel där när du använder For loop kommer kriterierna inte att brytas. Men för att fixa detta använder vi If-End- slingan. För detta behöver vi en modul där vi skriver denna kod.

Följ stegen nedan för att använda Break for Loop i Excel VBA.

Steg 1: Öppna en ny modul, gå till VBA-fönstret och välj Modul från menyn Alternativet Infoga.

Steg 2: Detta tar oss till en ny modul i VBA. Skriv nu underkategorin i den modulen i VBA Break For Loop-namnet eller i något annat namn som definierar dess betydelse.

Koda:

 Sub VBABreak1 () Slut Sub 

Steg 3: Definiera nu en DIM som valfritt alfabet eller ord. Detta ger det en identitet. Här använder vi alfabetet "A" nedan.

Koda:

 Sub VBABreak1 () Dim A End Sub 

Steg 4: Tilldela det nu som heltal som endast används för siffror som visas nedan.

Koda:

 Sub VBABreak1 () Dim A Som heltal End Sub 

Steg 5: Tilldela nu ett numeriskt värde till heltal A. Låt oss säga att det är 10 som visas nedan.

Koda:

 Sub VBABreak1 () Dim A som heltal A = 10 End Sub 

Steg 6: Starta nu en For loop och överväga alla startvärden på A. Det är bättre att ta detta värde som Noll. Detta blir lätt att beräkna.

Koda:

 Sub VBABreak1 () Dim A som heltal A = 10 För A = 0 till A Steg 2 Slut Sub 

Steg 7: Och för att skriva ut värdet som lagras i A, använder vi en meddelanderuta som hämtar dess värde. Du kan också använda vilken form av mening som helst för att göra meddelandelådan mer meningsfull, vilket är valfritt. Vi har använt det som visas nedan.

Koda:

 Sub VBABreak1 () Dim A som heltal A = 10 För A = 0 till A Steg 2 MsgBox ("Värdet är A är:" & A) Nästa slut Sub 

Steg 8: Kompilera nu koden steg för steg med funktionsknappen F8 och kör sedan koden genom att klicka på Spela-knappen som visas nedan. Vi ser att utgången i varje steg kommer att vara från 0 till 10 i steggapet på 2 som visas nedan.

Steg 9: Stäng nu till sist för Loop och använd också Nästa i slutet. "Nästa" används när vi använder siffror i koden.

Koda:

 Sub VBABreak1 () Dim A som heltal A = 10 För A = 0 till A Steg 2 MsgBox ("Värdet är A är:" & A) Utgång för nästa slut Sub 

Steg 10: Detta visar att slingan inte är fullständig och vi måste också fylla utgångskriterierna för att avsluta från For loop. Och för det kommer vi att använda If-End Loop-villkoret. Så överväg att skriva If loop för samma heltal A. Välj här gränsen tills du vill köra loopen. Vi har betraktat det som 4.

Koda:

 Sub VBABreak1 () Dim A som heltal A = 10 För A = 0 till A Steg 2 MsgBox ("Värdet är A är:" & A) Om A = 4 Avsluta sedan till nästa slut Sub 

Steg 11: Låt oss nu lägga till ytterligare ett kriterium där vi använder hur många gånger det skulle multipliceras med valfritt antal. Låt oss säga att det är 10. Du kan välja vilket annat nummer som helst istället för 10. Men med 10 är det lätt att förstå multiplikationsslingan.

Koda:

 Sub VBABreak1 () Dim A som heltal A = 10 För A = 0 till A Steg 2 MsgBox ("Värdet är A är:" & A) Om A = 4 Då A = A * 10 Utgång för nästa slut Sub 

Steg 12: Använd nu namnmeddelanderutan igen som vi har använt för For loop och stäng slutligen If Loop with End if- uttalandet som visas nedan.

Koda:

 Sub VBABreak1 () Dim A som heltal A = 10 För A = 0 till A Steg 2 MsgBox ("Värdet är A är:" & A) Om A = 4 Då A = A * 10 MsgBox ("Värdet är A är : "& A) Exit For End If Next End Sub 

Steg 13: Sätt igen koden och kör den. För Loop kommer att börja från att visa ett meddelande med värde 0 och sedan följt av 2, 4 och avsluta det 40. Vilket betyder att Loop blev trasig vid 3: e iterationen och tog det sista värdet som 40.

Exempel 2 - VBA Break For Loop

I det här exemplet kommer vi att använda For loop och ser hur vi bryter slingan när den uppfyller kriterierna.

Steg 1: Öppna en ny modul från menyalternativet Infoga och ge den en underkategori i valfritt namn eller bättre på ett sekventiellt sätt som visas nedan.

Koda:

 Sub VBABreak2 () Slut Sub 

Steg 2: Definiera nu en DIM A som heltal. Med hjälp av heltal för test kan vi implementera koden snabbare och felsöka enkelt.

Koda:

 Sub VBABreak2 () Dim A Som heltal End Sub 

Steg 3: Starta nu en For-loop för definierat heltal och ge det ett intervall från valfritt antal rader som börjar från 1. Vi har valt till 20.

Koda:

 Sub VBABreak2 () Dim A som heltal för A = 1 till 20 End Sub 

Steg 4: Ge nu ett intervall eller plats där numren skrivs ut i följd. Vi använde ThisWorkBook för att välja aktuell öppnad fil och kalkylblad (1) för att välja det första arket i en öppnad arbetsbok som visas nedan. För att stänga For-loopen skriver du Nästa i slutet som visas nedan.

Koda:

 Sub VBABreak2 () Dim A som heltal för A = 1 till 20 ThisWorkbook.Worksheets (1). Cells (A, 1) = A Next End Sub 

Steg 5: Kör ovanstående kod manuellt eller med kortkommando F5. Vi kan se att koden har gett antalet från 1 till 20.

Steg 6: Nu för att bryta slingan mellan 0 och 20 använder vi If-End if loop-villkoret där vi kommer att ge kriterierna för att falla in som visas nedan.

Koda:

 Sub VBABreak2 () Dim A som heltal för A = 1 till 20 om slut om ThisWorkbook.Worksheets (1) .Cells (A, 1) = A Next End Sub 

Steg 7: Skriv nu kriterierna, om A är större än 9 (eller valfritt antal men mindre än 20), avsluta för som visas nedan. Vi antar att For Loop ska gå sönder när slingan når 9.

Koda:

 Sub VBABreak2 () Dim A som heltal för A = 1 till 20 Om A> 9 Avsluta sedan till slut om ThisWorkbook.Worksheets (1) .Cells (A, 1) = A Next End Sub 

Steg 8: Sätt nu koden för att hitta felet. Om inget fel hittades kör du det. Vi kommer att se för heltal A-värden från 1 till 20 har fyllts tills koden har lämnat eller bruten i position 9.

Fördelar med VBA Break For Loop

  • Exit eller Break kan användas inte bara för For loop utan även i många andra slingor som till exempel Do-While.
  • Detta används oftast bland alla slingförhållanden som finns tillgängliga i VBA.
  • För Loop är ganska enkelt och kan fungera även utan utgångskriterier.

Saker att komma ihåg

  • För loop kan fungera utan att ange Exit-kriterierna. Det kan fungera bra tills kriterierna utan utgång bryter slingan till slut.
  • Det är viktigt att bryta alla slingor som inte uppfyller utgångskriterierna genom att använda Exit i loopen.
  • När du har skrivit koden sparar du filen som Macro Enable Excel så att den skrivna koden kommer att bevaras.

Rekommenderade artiklar

Detta har varit en guide till VBA Break For Loop. Här diskuterar vi hur du använder Excel VBA Break For Loop tillsammans med praktiska exempel och nedladdningsbar Excel-mall. Du kan också gå igenom våra andra föreslagna artiklar -

  1. VBA InStr förklarade med exempel
  2. VBA heltal datatyp
  3. Hur väljer jag cell med VBA-kod?
  4. Transponera ett intervall i VBA

Kategori: