Excel VBA szünet a hurok számára

A VBA Break akkor használatos, ha kilépni vagy megszakítani a folyamatos hurkot, amely bizonyos rögzített kritériumokkal rendelkezik. A hurok hatókörén belül meghatározza azokat a utasításokat, amelyeket egy meghatározott ideig ismételten végrehajtanak. Időnként, amikor bármilyen hurokfeltételt használunk a VBA-ban, gyakran előfordul, hogy a kód folyamatosan fut vég és szünet nélkül. Az ilyen helyzetek elkerülése érdekében javasolt néhány szünet vagy kilépési funkció használata, amelyekkel kiléphetünk a hurokból a makró mérhető kimenetével.

Hogyan lehet használni az Excel VBA szünetet a hurokhoz?

Megtanuljuk, hogyan kell használni a VBA szünet a hurokhoz, néhány példával az Excelben.

Itt letöltheti ezt a VBA szünet a Loop Excel sablonhoz - VBA szünet a Loop Excel sablonhoz

1. példa - VBA szünet a hurokhoz

Látni fogunk egy példát, amikor a For hurok használatakor a kritériumok nem kerülnek törésre. Ennek javításához az If-End hurkot fogjuk használni. Ehhez szükségünk van egy modulra, amelybe beírjuk ezt a kódot.

Kövesse az alábbi lépéseket a Break for Loop használatához az Excel VBA alkalmazásban.

1. lépés: Nyisson meg egy új modult, és nyissa meg a VBA ablakot, ahol válassza a Modul menüpontot a Beszúrás menüpontból.

2. lépés: Ez elvezet minket egy új modulhoz a VBA-ban. A modulba írja be az alkategóriát a VBA Break For Loop névre vagy bármely más névre, amely meghatározza annak jelentését.

Kód:

 Sub VBABreak1 () Sub 

3. lépés: Most határozza meg a DIM-et bármilyen ábécé vagy szóként. Ez identitást ad. Az alábbiakban az „A” ábécét használjuk.

Kód:

 Sub VBABreak1 () Dim A End Sub 

4. lépés: Most rendelje hozzá egész számként, amelyet csak a számokhoz használ, az alább látható módon.

Kód:

 Sub VBABreak1 () Dim A egészként vége Sub 

5. lépés: Most rendeljen numerikus értéket az A számhoz. Tegyük fel, hogy az alább látható módon 10.

Kód:

 Sub VBABreak1 () Dim A egész szám A = 10 Vége Sub 

6. lépés: Most indítson el egy For hurkot, és vegye figyelembe az A kezdõ értékét. Sokkal jobb ezt az értéket nullának tekinteni. Ez könnyen kiszámíthatóvá válik.

Kód:

 Sub VBABreak1 () Dim A egész szám A = 10 A = 0-tól A-ig 2. lépés vége Sub 

7. lépés: És az A-ban tárolt érték kinyomtatásához egy üzenetdobozt fogunk használni, amely lekérdezi annak értékét. Bármely formájú mondatot is használhat, hogy az üzenetmező jelentősebb legyen, amely opcionális. Az alább látható módon használtuk fel.

Kód:

 Sub VBABreak1 () dim. A egészként A = 10 A = 0-tól 2-ig MsgBox ("A érték:" és A) Következő vége Sub 

8. lépés: Most fordítsa le a kódot lépésről lépésre az F8 funkcionális billentyű használatával, majd futtassa a kódot a Play gombra kattintva, az alább látható módon. Látni fogjuk, hogy minden lépésben a kimenet 0 és 10 között lesz, az alább bemutatott 2 lépéslépésben.

9. lépés: Végül zárja be a hurkot, és a végén használja a Tovább gombot . A „Következő” akkor használatos, ha számokat használunk a kódban.

Kód:

 Sub VBABreak1 () Dim A egész szám A = 10 A = 0-tól 2-ig MsgBox ("A érték:" és A) Kilépés a következő vég Sub 

10. lépés: Ez azt mutatja, hogy a hurok nem teljes, és a For hurokból való kilépéshez is ki kell töltenünk a kilépési kritériumokat. És ehhez az If-End Loop feltételt fogjuk használni. Tehát fontolja meg az If egész hurok megírását ugyanazon egész számhoz. Itt válassza ki azt a korlátot, amíg a hurkot futtatni szeretné. 4-nek tekintettük.

Kód:

 Sub VBABreak1 () dim. A egészként A = 10 A = 0-tól 2-ig Lépés MsgBox ("Az érték A:" & A) Ha A = 4, akkor lépjen ki a következő vége al 

11. lépés: Most adjunk hozzá még egy kritériumot, amelyben felhasználjuk azt, hogy hányszor megszorozzuk bármelyik számmal. Tegyük fel, hogy 10. A 10 helyett bármilyen más számot választhat. De a 10 használata megkönnyíti a szorzási kör megértését.

Kód:

 Sub VBABreak1 () dim. A egészként A = 10 A = 0-tól 2-ig Lépés MsgBox ("Az érték A:" & A) Ha A = 4, akkor A = A * 10 Kilépés a következő vég sub 

12. lépés: Most ismét használja a névüzenetet, ahogyan azt a For hurokhoz használtuk, és végül zárja be az If Loop with End if utasítást az alább látható módon.

Kód:

 Sub VBABreak1 () Dim A egész szám A = 10 A = 0-tól 2-ig MsgBox ("Az érték A:" & A) Ha A = 4, akkor A = A * 10 MsgBox ("Az érték A értéke : "& A) Kilépés a véghez, ha a következő vége al 

13. lépés: Fordítsa újra a kódot, és futtassa. A Loop számára a 0 értékű üzenet megjelenítését indítja el, aztán 2, 4 követi, és 40-re fejeződik be. Ami azt jelenti, hogy a Loop a harmadik iterációnál eltört, és az utolsó értékét 40-nek veszi.

2. példa - VBA szünet a hurok számára

Ebben a példában a For hurkot fogjuk alkalmazni, és meglátjuk, hogyan lehet megszakítani a hurkot, miután teljesíti a kritériumokat.

1. lépés: Nyisson meg egy új modult a Beszúrás menüből, és adjon neki Alkategóriát bármilyen névvel vagy annál jobbval, az alábbiak szerint.

Kód:

 Sub VBABreak2 () Sub 

2. lépés: Most definiálja a DIM A egész számként. Az Integer használata a teszthez lehetővé teszi a kód gyorsabb megvalósítását és a hibakeresést.

Kód:

 Sub VBABreak2 () Dim A egészként vége Sub 

3. lépés: Most indítsa el a For hurkot a megadott egész számra, és adjon neki egy tartományt az 1-től kezdődő sorok számától. 20-ig választottuk.

Kód:

 Sub VBABreak2 () A halmaz egész értékeként A = 1-től 20-ig vége Sub 

4. lépés: Adjon meg egy tartományt vagy helyet, ahonnan a számokat sorrendben nyomtatják ki. A ThisWorkBook segítségével választottuk meg az aktuálisan megnyitott fájlt, és a Munkalapok (1) segítségével választottuk meg a megnyitott munkafüzet első lapját, az alábbiak szerint. Most a For hurok bezárásához írja a következõt a következõre, ahogy az alább látható.

Kód:

 Sub VBABreak2 () Egész egészként tompítja A = 1 - 20 ThisWorkbook.Worksheets (1) .Cells (A, 1) = A Next End Sub 

5. lépés: Futtassa a fenti kódot kézzel vagy az F5 gyorsbillentyűvel. Láthatjuk, hogy a kód számot adott 1-től 20-ig.

6. lépés: Most, hogy megszakítsuk a hurkot 0 és 20 között, akkor az If-End if loop feltételt fogjuk használni, ahol megadjuk az alábbiakban bemutatott kritériumokat.

Kód:

 Sub VBABreak2 () Egész egészként A = 1-től 20-ig, ha vége, ha ez aWorkbook.Worksheets (1) .Cells (A, 1) = A Next End Sub 

7. lépés: Most írja be a kritériumokat: Ha A nagyobb, mint 9 (Vagy bármelyik szám, de kevesebb, mint 20), akkor lépjen ki az alább látható módon. Feltételezzük, hogy a huroknak törni kell, amikor a hurok eléri a 9-et.

Kód:

 Sub VBABreak2 () dim. 

8. lépés: Most fordítsa le a kódot a hibakereséshez. Ha nem található hiba, akkor futtassa. Látni fogjuk, hogy az A egész szám 1-től 20-ig megtelt-e, amíg a kód kilép vagy törik a 9. pozícióban.

A VBA Break Loop előnyei

  • Az Exit vagy a Break nemcsak a hurokhoz használható, hanem sok más hurokhoz, például a Do-While-hoz.
  • Ezt a leggyakrabban a VBA-ban elérhető hurokkörülmények között használják.
  • A Loop számára meglehetősen egyszerű, és kilépési kritériumok nélkül is működhet.

Dolgok, amikre emlékezni kell

  • A hurok a kilépési kritérium megadása nélkül működhet. Mindaddig működik, amíg az Exit nélküli kritériumok meg nem szakítják a hurkot.
  • Fontos, hogy töröljünk minden olyan hurkot, amely nem felel meg a kilépési kritériumoknak, ha az Exit gombbal használjuk.
  • A kód beírása után mentse el a fájlt Macro Enable Excel formátumban, hogy az írott kód megmaradjon.

Ajánlott cikkek

Ez egy útmutató a VBA Break For Loop-hoz. Itt megvitatjuk az Excel VBA Break For Loop használatának gyakorlati példáit és letölthető Excel sablonját. Megnézheti más javasolt cikkeinket -

  1. A VBA InStr példákkal magyarázta
  2. VBA egész szám adattípus
  3. Hogyan válasszuk ki a cellát a VBA kód használatával?
  4. Távolítsa el a tartományt a VBA-ban

Kategória: