VBA tehdä silmukkaan asti Vaiheittaiset esimerkit Do To -toiminnon käyttämiseen VBA: ssa

Mitä on tehtävä silmukkaan VBA Excelissä?

Julkaisussa VBA Do Until Loop meidän on määriteltävä kriteerit asti-lauseen jälkeen, mikä tarkoittaa, milloin haluamme silmukan loppuvan ja loppulause on itse silmukka. Joten jos ehto on EPÄTOSI, se jatkaa käskyn suorittamista silmukan sisällä, mutta jos ehto on TOSI heti, se poistuu Do Until -lausekkeesta.

Koska sanat itse sanovat, että jonkin tehtävän suorittamiseksi, kunnes kriteeri saavutetaan, tee, kunnes silmukkaa käytetään melkein kaikilla ohjelmointikielillä, myös VBA: ssa käytämme joskus Do till loopia. Tee kunnes silmukka tarkoittaa tehdä jotain, kunnes ehdosta tulee TOSI. Se on kuin looginen toiminto, joka perustuu TOSI tai EPÄTOSI.

Tämä on Do While -silmukan vastakohta, jossa Do while suorittaa silmukoita niin kauan kuin ehto on TOSI.

Syntaksi

Tee asti -silmukalla on kahdenlaisia ​​syntaksia.

Syntaksi # 1 

 Tee kunnes [ehto] [Suorita joitain tehtäviä] -silmukka 

Syntaksi # 2

 Tee [Suorita joitain tehtäviä] silmukka kunnes [ehto] 

Molemmat näyttävät hyvin samanlaisilta ja on olemassa yksi yksinkertainen erottelu.

Ensimmäisessä syntaksissa ”Tee kunnes” -silmukka tarkistaa ehdon ensin ja saa ehdoksi tuloksen TOSI tai EPÄTOSI. Jos ehto on EPÄTOSI, se suorittaa koodin ja suorittaa määritetyn tehtävän ja jos ehto on TOSI, se poistuu silmukasta.

Toisessa syntaksin "Do" -silmukassa se suorittaa ensin kooditehtävän ja sitten testaa, onko ehto TOSI vai EPÄTOSI. Jos ehto on EPÄTOSI, se palaa takaisin ja suorittaa saman tehtävän. Jos ehto on TOSI, se poistuu heti silmukasta.

Esimerkki

Tiedän, että teoriaosassa ei ole niin helppoa ymmärtää mitään, mutta ei ole syytä huoleen. Annamme sinulle yksinkertaisia ​​esimerkkejä silmukan ymmärtämisestä. Jatka lukemista. Aloita oppiminen suorittamalla tehtävä 10 ensimmäistä sarjanumeroa solusta A1 A10.

Voit ladata tämän VBA Do Until Excel -mallin täältä - VBA Do Until Excel -malli

Noudata alla olevia vaiheita, kun haluat tehdä ”To do” -silmukan.

Vaihe 1: Luo ensin makronimi aloittaaksesi alimenettelyn.

Koodi:

 Sub Do_Until_Example1 () End Sub 

Vaihe 2: Määritä muuttujaksi "Pitkä".  Olen määrittänyt ”x” pitkäksi tietotyypiksi.

Hämärä x yhtä pitkä

Vaihe 3: Kirjoita nyt sana "Tee siihen asti".

Tee kunnes

Vaihe 4: Syötä silmukan nimi aloitettuasi ehdoksi ”x = 11”.

 Tee kunnes x = 11

x = 11 on soveltama looginen testi. Joten tämä rivi sanoo suorittavan silmukan, kunnes x on yhtä suuri kuin 11.

Vaihe 5: Käytä CELLS-ominaisuutta ja lisätään sarjanumerot 1-10.

Solut (x, 1). Arvo = x

Huomaa: Tässä olemme maininneet, että "x" alkaa luvusta 1, joten aluksi x-arvo on yhtä suuri kuin missä tahansa "x" on yhtä suuri kuin 1.

Vaihe 6: Sulje nyt silmukka kirjoittamalla sana ”LOOP”.

 Sub Do_Until_Example1 () Himmennä x niin kauan, kunnes x = 11 solua (x, 1). Arvo = x silmukka 

End Sub

Ok, olemme valmiit koodaavan osan kanssa, nyt testataan koodit rivi riviltä ymmärtämään silmukkaa paremmin.

Suorita rivi rivikoodilla painamalla ensin F8-näppäintä.

Se korostaa ensin makron nimen keltaisella värillä.

Kun näet keltaisen viivan, se sanoo, että sitä ei suoriteta, kun aiot suorittaa, jos painat F8-näppäintä vielä kerran.

Paina nyt F8-näppäintä vielä kerran, keltainen viiva siirtyy kohtaan Loppuun asti.

Nyt ymmärtääksesi silmukan, siirrä kohdistin muuttujaan "x" ja näet muuttujan "x" arvo.

Joten, x = 0. Koska korostettu viiva on silmukan ensimmäinen rivi, joten “x”: n arvo on nolla, joten paina F8-näppäintä uudelleen ja katso ”x”: n arvo. Ennen poistumista koodi on käynnissä ja määritä arvoksi ”x” 1.

Aloita nyt silmukan juokseminen uudelleen painamalla F8-näppäintä. Katso “x”: n arvo.

Nyt ”x”: n arvo on 1. Jotta muuttujalle ”x” tulisi olla inkrementaaliarvo, meidän on määritettävä muuttujan ”x” arvo uudelleen arvoksi x = x + 1 silmukan sisällä.

Paina nyt F8-näppäintä vielä kerran ja meidän pitäisi saada arvo 1 solusta A1.

Paina nyt F8-näppäintä vielä kerran ja katso, mikä on “x”: n arvo.

Muuttujan ”x” arvo on nyt 2. Joten ehtomme sanoo suorittavan silmukan, kunnes ehdosta tulee TOSI, joten silmukka jatkuu, kunnes "x": n arvosta tulee 11.

Paina F8-näppäintä vielä kerran, jolloin se siirtyy takaisin "Do Until" -silmukkaan.

Paina F8-näppäintä vielä kaksi kertaa, niin saat arvon 2 solussa A2.

Paina F8-näppäintä uudelleen, jolloin “x” -arvosta tulee nyt 3.

Paina F8-näppäintä uudelleen, se palaa takaisin silmukkaan jälleen.

Tällä tavoin tämä silmukka jatkaa tehtävän suorittamista, kunnes "x" -arvosta tulee 11. Nyt olen suorittanut silmukan, kunnes "x" -arvosta tulee 11.

Jos painan F8-näppäintä, se palaa silti takaisin.

Mutta jos painan F8-näppäintä nyt, se poistuu silmukasta, koska sovelletusta ehdosta tulee TOSI eli x = 11.

Joten meillä on sarjanumerot 1-10 Excel-taulukossa.

Joten, tämä on "Tee asti" -silmukan perusidea. Silmukoiden ymmärtämiseksi sinun on suoritettava koodi rivi riviltä, ​​kunnes saat täydellisen tiedon silmukoista.


$config[zx-auto] not found$config[zx-overlay] not found