Excel VBA Do Do Loop

Addig tegye, amíg a hurok folytatja az állítások megismétlését, amíg a feltétel / kritériumok igazak lesznek. Mindaddig végrehajtja az utasításokat, amíg a FALSE feltételek fennállnak. Amint a feltétel / kritériumok igazakvá válnak, megszűnik a hurok. Ellentétesnek tekinthető a Do While hurokkal, ahol a hurok mindaddig fut, amíg a kritériumok igazak, és megszüntetésre kerül, amint a kritériumok HAMISOK.

Lásd az alábbi folyamatábrát, amely elmagyarázza a Do till hurok működését:

A Szokásos ciklus szintaxisa az Excel VBA-ban

Addig tegye, amíg a Loopnek kétféle szintaxisa van az Excel VBA-ban.

1. szintaxis:

 Addig vége (feltétel) (végrehajtandó nyilatkozatok) hurok 

2. szintaxis:

 Csinálj (végrehajtandó nyilatkozatokat) hurokig (feltétel) 

A két szintaxis közötti alapvető különbség a végrehajtás. Az első szintaxisban a hurok mindig ellenőrzi, hogy a feltétel igaz-e vagy hamis. Ha hamis, akkor megismétli a hurkot. Amint a feltétel / kritériumok teljesülnek, az megszünteti a hurkot. Ebben az esetben fennáll annak a lehetősége, hogy a hurok az első iterációval megszakad (ha a feltétel igaz). Ennélfogva ebben az esetben nem kap eredményt. A második szintaxisban azonban a hurok kezdetben végrehajtja az utasításokat, majd ellenőrzi, hogy az igaz-e vagy hamis-e. Ha a feltétel hamis, akkor ismét végrehajtja ugyanazt az állításkészletet, és ellenőrzi a feltételt. Ha az első iteráció valódi állapotot ad, akkor ez a hurok leáll, de ezt megelőzően egy utasítás kerül végrehajtásra. Ebben az esetben legalább egy iterációt kapunk (As null output).

Végül, a két kód kimenete azonos lesz. A végrehajtás azonban különbözik e kettőtől.

Példa az Excel VBA Do Do Loop-ra

Nézzük meg a „Do till Loop” példákat az Excel VBA-ban.

Itt töltheti le a VBA Do Kuni Loop Excel sablonját - VBA Do Kuni Loop Excel sablont itt

1. példa - VBA Do Do Loop, amíg a körülményeket az elején ellenőrzik

Kövesse az alábbi lépéseket az Do Végzés hurok alkalmazásához az Excel VBA alkalmazásban.

1. lépés: Helyezzen be új modult a Visual Basic Editor (VBE) alá, hogy kódot tudjon írni.

2. lépés: Határozzon meg egy alprogramot, amely tárolhatja az írt makró kódot.

Kód:

 Sub Do_Until_Ex1 () End Sub 

3. lépés: Adjon meg egy új „X” változót, „Adattípus” -val: „Hosszú”. Ez a változó felhasználható feltételként / kritériumként a Do till loop alatt.

Kód:

 Sub Do_Until_Ex1 () Dim X Am Long End Sub 

4. lépés: Állítsa az X változó kezdeti értékét 1-re.

Kód:

 Sub Do_Until_Ex1 () tompítani X, amíg X = 1 vége sub 

5. lépés: Indítsa el a hurkot a "Do Kuni" kulcsszavakkal.

Kód:

 Sub Do_Until_Ex1 () tompítsa X-et, amíg X = 1 csináljon, amíg a vég sub 

6. lépés: Adja meg a kritériumokat: X = 11 a Do Do. Ez egy olyan helyzet, amely lehetővé teszi a hurok megszakítását, ha igaz. Ez azt jelenti, hogy a hurok addig fut, amíg az X = 11 érték nem lesz. Amint X értéke 11-rel egyenlő, a hurok véget ér.

Kód:

 Sub Do_Until_Ex1 () tompítsa X-et, amíg X = 1 Do add, amíg X = 11 End Sub 

7. lépés: Most használja a VBA cellákat. Érték funkció, amely lehetővé teszi az egyes számok négyzetének hozzáadását X-ig az első oszlop alá.

Kód:

 Sub Do_Until_Ex1 () tompítja X mindaddig, amíg X = 1 addig, amíg X = 11 cella (X, 1) .érték = X * X X vége 

8. lépés: Ismét be kell állítanunk az x-os növekedést 1-gyel, úgy, hogy minden alkalommal, amikor a hurok fut, és ellenőrzi a feltételt, a következő számra megy, és négyzetértékét a megfelelő cellában tárolja, amíg a 11. szám nem lesz.

Kód:

 Sub Do_Until_Ex1 () tompítja X mindaddig, amíg X = 1 addig, amíg X = 11 cella (X, 1). Érték = X * XX = X + 1 End Sub 

9. lépés: Végezze el ezt a „Do till loop” cikket azáltal, hogy beírja a „hurok” kulcsszót a kód végére.

Kód:

 Sub Do_Until_Ex1 () tompítja X, amíg X = 1 addig, amíg X = 11 cella (X, 1). Érték = X * XX = X + 1 hurok vége Sub 

Ebben a kódban négyzetértékeket szeretnénk kapni, amelyek az 1-től 11-ig terjedő számokra vonatkoznak (Amint az érték 11, a hurok véget ér). Az excel adatlap minden cellája alatt (a 11. celláig) az értékek tárolásra kerülnek. Az 1 egység növekedése lehetővé teszi, hogy egy számot minden alkalommal 1-rel megnöveljenek az X előző értékében, és ennek a számnak a négyzetértéke kinyomtatódik a megfelelő cellába. Például a 3 négyzetének értéke az aktív excel lap harmadik cellájába kerül kinyomtatásra. Ez a hurok mindaddig fut, amíg X nem egyenlő a 11. Ezért az A1 cellánál az A10 celláig kapjuk a szám négyzetértékeit 1-től 10-ig (a 11-es számú hurok véget vet).

10. lépés: Nyomja meg a Futtatás gombot, vagy nyomja meg az F5 billentyűt a kód futtatásához és a kimenet megtekintéséhez.

2. példa - Do add hurokig, amikor a hurok végén ellenőrzik a feltételeket

Kövesse az alábbi lépéseket az Do Végzés hurok alkalmazásához az Excel VBA alkalmazásban.

1. lépés: Adjon meg egy új alapelvet a VBE modul alatt.

Kód:

 Sub Do_Until_Ex2 () Sub 

2. lépés: Adjon meg egy „Y” változót az „Adag” típusú adattal: „Hosszú”. Ez a változó hasznos lesz a feltételek meghatározásában.

Kód:

 Sub Do_Until_Ex2 () Eltávolítás Y Am Long End Sub 

3. lépés: Állítsa az „Y” változó kezdeti értékét 1-re.

Kód:

 Sub Do_Until_Ex2 () tompítsa Y, amíg Y = 1 Vége Sub 

4. lépés: Adja hozzá a Do feltételt azáltal, hogy beírja a Do következő sorra, miután Y kezdeti értékét 1-re állította.

Kód:

 Sub Do_Until_Ex2 () tompítsa Y, amíg Y = 1 Do Do Sub 

5. lépés: Adja hozzá a végrehajtani kívánt kóddarabot a Do hurok alá. Itt ugyanazt a példát fogjuk venni, mint a fentiekben (ez segít megismerni, hogy a kimenetek azonosak, de a két kód összeállítása eltér).

Kód:

 Sub Do_Until_Ex2 () Halványítsa Y Ha hosszú Y = 1 Do Sheets ("2. példa") .Cella (Y, 1) .Value = Y * Y End Sub 

6. lépés: A hurok minden ismétlése után azt akarta, hogy az értéket 1 egységgel növeljék, és állítson be ehhez egy parancsot a Do szakasz alatt.

Kód:

 Sub Do_Until_Ex2 () Eltávolít Y, amíg Y = 1 Do Sheets ("2. példa"). Cella (Y, 1) .Value = Y * YY = Y + 1 End Sub 

7. lépés: Adjon hozzá egy zárási nyilatkozatot a hurokhoz egy „hurok” kulcsszóval.

Kód:

 Sub Do_Until_Ex2 () Halványítsa Y Ha hosszú Y = 1 Do Sheets ("2. példa") .Cella (Y, 1) .Value = Y * YY = Y + 1 hurok vége Sub 

Kitartás! Van még valami. A kritériumot / feltételt hozzá kell adnia ennek a huroknak, ezúttal a hurok kulcsszó után. Ez lehetővé teszi a fordítónak, hogy ellenőrizze az állapotot a hurok végén.

8. lépés: Addig, amíg Y = 11, feltételként a Loop Kulcsszó után.

Kód:

 Sub Do_Until_Ex2 () Halványítsa Y Ha hosszú Y = 1 Do Sheets ("2. példa"). Cella (Y, 1) .Value = Y * YY = Y + 1 hurok, amíg Y = 11 End Sub 

9. lépés: Futtassa ezt a kódot az F5 vagy a Futtatás gomb megnyomásával, és nézze meg a varázslatot a „2. példa” nevű lapon.

Hogyan működik ez a kód?

A rendszer a hurok alatt minden alkalommal Y értékig négyzetre áll, és sorból sorra tárolja a „2. példa” nevű lap második oszlopában. Minden iteráció után az Y aktuális értékét 1 egységgel növelik, és a frissített értéket négyzetbe helyezik és tárolják. Mindaddig, amíg az érték kisebb, mint a kritériumérték (Y = 11), a kód elvégzi a négyzetet, és tárolja azt. Amint az érték-fordító eléri az Y = 11 értéket, leállítja a kód végrehajtását, és ugyanazt fejezi be.

Mindkét kód hasonló kimenetet ad, de logikailag különbség van a fordításban mindkettőnél. Az első típusú kódban a feltételt a hurok elején ellenőrzik, és ha az Hamis, akkor csak a hurok kezdi kiértékelni a következő kifejezést. A második példában azonban a kód megkezdi a hurok futtatását és a Do utasítások végrehajtását az elején (az értékek tárolása a végrehajtási utasítások puffermemóriájában). A hurok végén a fordító felveszi a kritériumot, és ellenőrzi ugyanazt a pufferértékkel.

Dolgok, amikre emlékezni kell

  • A VBA Do till pontosan az Excel VBA Do While fordított esete. VBA Do Amíg a hurok addig fut, amíg az állapot igaz. Ha a feltétel HAMIS, akkor a Do While hurok megszűnik. Másrészről, a VBA Do Kuni addig fut, amíg a feltétel HAMIS. Amint a feltétel igaz, a hurok megszűnik.
  • Kétféleképpen működik: az egyik az, amikor a feltételt a hurok elején ellenőrzik, a másik az állapotot a hurok végén.

Ajánlott cikkek

Ez egy útmutató a VBA Do Loop-hez. Itt megvitatjuk az Excel VBA Do Kuni Loop használatának módját, néhány gyakorlati példával és letölthető Excel sablonnal együtt. Megnézheti más javasolt cikkeinket -

  1. VBA Míg a hurok
  2. LOOKUP Formula Excelben
  3. Komplett oktatóanyagok a VBA hurkokon
  4. Keresési táblázat az Excel programban

Kategória: