VBA Do smyčky Krok za krokom Príklady použitia Do Do vo VBA

Čo je to Do Loop vo VBA Excel?

Vo VBA Do Until Loop musíme definovať kritériá za príkazom until, čo znamená, kedy chceme, aby sa slučka zastavila a koncový príkaz je samotná slučka. Ak je teda podmienka FALSE, bude pokračovať vo vykonávaní príkazu vo vnútri slučky, ale ak je podmienka ihneď PRAVDA, ukončí sa príkaz Do Do.

Keďže samotné slová hovoria, že na vykonanie určitej úlohy, kým sa nedosiahne kritérium, urobte, kým sa slučka nepoužíva takmer vo všetkých programovacích jazykoch, vo VBA tiež niekedy používame slučku Do do. Robiť do slučky znamená robiť niečo, kým sa stav nestane PRAVDA. Je to ako keby logická funkcia fungovala na základe TRUE alebo FALSE.

Toto je opak slučky Do While, kde Do while spúšťa slučky, pokiaľ je podmienka TRUE.

Syntax

Smyčka Do Kým má dva druhy syntaxe.

Syntax # 1 

 Robiť Do [podmienka] [Vykonať určitú úlohu] Slučka 

Syntax č. 2

 Robte [Vykonajte určitú úlohu] Smyčte, kým sa [podmienka] 

Oba vyzerajú veľmi podobne a existuje jedna jednoduchá diferenciácia.

V prvej syntaxi slučka „Do Kým“ najskôr skontroluje podmienku a získa výsledok podmienky, ktorý je TRUE alebo FALSE. Ak je podmienka FALSE, vykoná kód a vykoná zadanú úlohu, a ak je podmienka TRUE, opustí slučku.

V druhej syntaxi cyklu „Do“ najskôr vykoná úlohu cod, potom otestuje, či je podmienka TRUE alebo FALSE. Ak je podmienka FALSE, znova sa vráti späť a vykoná rovnakú úlohu. Ak je podmienka PRAVDA, potom okamžite opustí slučku.

Príklad

Viem, že nie je také ľahké pochopiť nič v teoretickej časti, ale netreba sa ničoho obávať. Dáme vám jednoduché príklady na pochopenie tohto cyklu. Pokračuj v čítaní. Na začatie výučby vykonáme úlohu vloženia prvých 10 sériových čísel z bunky A1 do A10.

Túto šablónu VBA Do Dokedy Excel si môžete stiahnuť tu - Šablónu VBA Do Dokedy Excel

Podľa pokynov uvedených nižšie použite slučku „Do“.

Krok 1: Najprv vytvorte názov makra, aby ste spustili podproces.

Kód:

 Sub Do_Until_Example1 () Koniec Sub 

Krok 2: Definujte premennú ako „Long“.  Definoval som „x“ ako dlhý dátový typ.

Dim x As Long

Krok 3: Teraz zadajte slovo „Do“.

Robiť do

Krok 4: Po spustení názvu slučky zadajte podmienku ako „x = 11“.

 Robiť Do x = 11

x = 11 je logický test, ktorý sme použili. Tento riadok teda hovorí, že má slučka bežať, kým sa x nerovná 11.

Krok 5: Použite vlastnosť CELLS a vložte sériové čísla od 1 do 10.

Bunky (x, 1). Hodnota = x

Poznámka: Tu sme spomenuli, že „x“ začína od 1, takže najskôr je hodnota x rovná 1. Kdekoľvek je „x“, je rovné 1.

Krok 6: Teraz zatvorte slučku zadaním slova „LOOP“.

 Sub Do_Until_Example1 () Dim x tak dlho, kým x = 11 buniek (x, 1). Hodnota = x Loop 

Koniec Sub

Dobre, s programovacou časťou sme skončili. Teraz budeme testovať kódy riadok po riadku, aby sme lepšie porozumeli slučke.

Ak chcete spustiť riadok po riadku, najskôr stlačte kláves F8.

Najskôr zvýrazní názov makra žltou farbou.

Keď uvidíte žltú čiaru, znamená to, že sa to nevykoná skôr, ako stlačíte kláves F8 ešte raz.

Teraz stlačte ešte raz klávesu F8, žltá čiara prejde na krok Do Loop.

Teraz, aby ste pochopili slučku, umiestnite kurzor na premennú „x“ a uvidíte hodnotu premennej „x“.

Takže x = 0. Pretože zvýraznený riadok je prvý riadok v slučke, takže hodnota „x“ je nula, stlačte ešte raz klávesu F8 a uvidíte hodnotu „x“. Pred týmto výstupom je spustený kód a hodnota je „x“ priradená ako 1.

Teraz znova začnite beh slučky stlačením klávesu F8. Pozrite si hodnotu „x“.

Teraz sa hodnota „x“ zobrazuje ako 1. Aby sme mali premennú „x“ prírastkovú hodnotu, musíme znova priradiť hodnotu premennej „x“ ako x = x + 1 vo vnútri slučky.

Teraz stlačte kláves F8 ešte raz a v bunke A1 by sme mali dostať hodnotu 1.

Teraz stlačte kláves F8 ešte raz a uvidíte, aká je hodnota „x“.

Hodnota premennej „x“ je teraz 2. Naša podmienka teda hovorí, že musíme spustiť slučku, kým sa podmienka nestane PRAVDA, takže naša slučka beží ďalej, kým sa hodnota „x“ nezmení na 11.

Ďalším stlačením klávesu F8 prejdete späť na riadok slučky „Do“.

Stlačte kláves F8 ešte dvakrát, v bunke A2 získame hodnotu 2.

Znovu stlačte kláves F8 a hodnota „x“ sa teraz zmení na 3.

Opätovným stlačením klávesu F8 sa skočíte späť do slučky.

Takto bude táto slučka opäť pokračovať v vykonávaní úlohy, kým sa hodnota „x“ nezmení na 11. Teraz som smyčku vykonávala, kým sa hodnota „x“ nezmení na 11.

Ak teraz stlačím kláves F8, vráti sa do slučky.

Ale ak teraz stlačím kláves F8, ukončí sa to zo slučky, pretože použitá podmienka sa stane „TRUE“, tj. X = 11.

Takže teraz máme v excelovom liste sériové čísla od 1 do 10.

Toto je teda základná myšlienka cyklu „Robiť do“. Aby ste pochopili všetky cykly, musíte spustiť kód po riadku, kým nezískate úplné informácie o cykloch.