Haluatko automatisoida toistuvia tehtäviä Excel VBA: ssa? Opi käyttämään Do-While-silmukkaa toimintosarjan suorittamiseen toistuvasti, kunnes ehto täyttyy.
Silmukat ovat olennainen osa mitä tahansa koodauskieltä, ja voit automatisoida paljon toistuvia tehtäviä käyttämällä erilaisia silmukoita, riippuen kielestä. Excelin VBA ei eroa muista, koska se tarjoaa sarjan silmukkavaihtoehtoja, joista jokainen palvelee eri tarkoitusta.
Voit käyttää näitä silmukoita määrittämällä aloitus- ja loppupisteet, ehdot ja parametrit. Yksi tällainen näkyvä VBA: n silmukka on do-while-silmukka, jota voit käyttää tietojen automatisoinnin kanssa. Näin voit käyttää Excel VBA: n do-while -silmukkaa, joka on aina välttämätön silmukkamenetelmä, joka voi yksinkertaistaa manuaalisia tehtäviäsi suuressa määrin.
Mikä on Do-While-silmukka Excel VBA: ssa?
Do-while -silmukka on melko suoraviivainen; voit käyttää tätä silmukkaa tehdäksesi tarjouksiasi, jos haluat luoda halutun tulosteen tietyn ehdon perusteella. Silmukka suoritetaan, kunnes määritetty ehto (s) on tosi. Kun ohjelma havaitsee False-arvon, silmukka päättyy ja tulostaa tulokset määrättyihin soluihin.
Voit käyttää do-while-silmukkaa eri vaiheissa ja eri kriteereillä; Voit jopa käyttää useita silmukoita pääulomman silmukan sisällä parantaaksesi sen käyttöä. Aloittelijana sinun tulisi viitata yksityiskohtaisiin VBA ohjelmointi tutoriaalit kehittääksesi tietojasi ja taitojasi tällä alalla.
Do-While Loopin syntaksi Excel VBA: ssa
Do-while-silmukalla on ennalta määritetty rakenne, jota sinun on noudatettava varmistaaksesi, että se toimii sujuvasti ilman virheitä. Tässä syntaksi viitteeksi:
Tehdäsillä aikaa [condition_reference]
[Ehdot]
Silmukka
Silmukka alkaa avainsanalla do-while, jota seuraa aloitus- ja loppuviittaukset. Syntaksin ensimmäinen osa ohjaa koko silmukkaa. Seuraavaksi sinun on määritettävä lauseet, jotka suoritetaan joka kerta, kun silmukka suoritetaan.
Lopuksi, kun silmukkaehto saa arvon False, silmukan avainsana suoritetaan ja poistuu silmukasta. Tämä on yleinen rakenne; voit tarkentaa sitä suorittamaan erilaisia toimintoja. Tässä on joitain esimerkkejä, joiden avulla voit tutustua do-while-silmukan toimintaan.
Ensimmäisen Do-While -silmukkakoodin kirjoittaminen
Oletetaan, että haluat näyttää kahden kerrannaiset sarakkeessa A. Edellytyksenä on tulostaa numerot, kunnes laskuri saavuttaa 20:n.
Voit tehdä tämän siirtymällä Excelin Kehittäjä-välilehdelle ja avaamalla koodauseditorin. vaihtoehtoisesti paina Alt + F11 avataksesi koodauseditorin suoraan. Napsauta koodieditori-ikkunassa Lisää -välilehti ja lisää uusi moduuli.
Sinun on kirjoitettava kaikki koodi tähän moduuliikkunaan. Lisää seuraava koodi moduulin sisään:
Sub dowhileloop()
Himmeä a Kuten Kokonaisluku
a = 1
TehdäSillä aikaa a <= 10
Solut (a, 1) = 2 * a
a = a + 1
Silmukka
Loppu Sub
Koodi selitetty
Tässä on koodin erittely, joka auttaa sinua hallitsemaan perusasiat:
- Käytä aliohjelmaa: Aloita koodin kirjoittaminen Excel VBA: ssa luomalla ulompi kuori alirutiinifunktiolla (Sub). Anna sille merkityksellinen nimi, joka resonoi koodin tarkoituksen kanssa. Tässä esimerkissä voit käyttää nimeä dowhileloop, jota seuraa ().
- Määritä tietotyypit: Dimensio (dim) -funktiota on käytettävä muuttujien tietotyyppien ilmoittamiseen. Ilmoittamalla tietotyypin voit tehostaa koodiasi ja parantaa suoritusnopeutta. Tässä tapauksessa muuttuja a tallentaa kokonaislukuarvot, joten käytä kokonaislukutietotyyppiä sen määrittämiseen. Voit tallentaa aloitusrivin numeron tähän muuttujaan ilmoittaaksesi do-while-silmukan aloitusdatapisteen.
- Määrittele ehto(t): Nyt on aika ohittaa ehto do-while-silmukan hallitsemiseksi. Voit käyttää tehdä, kun avainsanat ja ehto. Koska haluat suorittaa silmukan kymmenen kertaa, käytät ehtoa a < = 10.
- Välitä suoritettavat lausunnot: On tärkeää, että tiedät eron näiden välillä Solut-toiminto ja Range-toiminto VBA: ssa. Solufunktio käyttää rivi- ja sarakeviittauksia VBA: ssa. Esimerkiksi ensimmäisen iteraation aikana, kun arvo a =1, solukaava on (1,1). VBA: n muistissa tämä tarkoittaa solua A1. Joka kerta kun silmukka suoritetaan, määritellyn muuttujan arvo kasvaa ja viite siirtyy seuraavaan käytettävissä olevaan soluun.
- Kasvata muuttujaasi: Voit ohittaa a = a + 1 lauseke solujen arvojen kasvattamiseksi. Tämä siirtää silmukan ehdon seuraavaan osaan; silmukka jatkuu, kunnes ehto saa arvon False.
- Poistu Loop-tilasta: Kun ehto on False, silmukka poistuu Silmukka-avainsanalla ja lopuksi alirutiinista End Sub -avainsanalla.
- Koodin suorittaminen: Koska koodi on valmis, paina F5-näppäin tai vihreää toistopainiketta ylävalikkopalkissa suorittaaksesi koodin.
Lopputulos näyttää luettelon numeroista 2-20 sarakkeessa A.
Esitäytetyn sarakkeen käyttäminen silmukkaehtona
Nyt kun olet ymmärtänyt perusrakenteen rakentamisen syntaksin ja vivahteet, miksi et kirjoittaisi toista koodia samanlaisten numeroiden tulostamiseksi olemassa olevien kriteerien perusteella? Voit esimerkiksi luoda silmukkaehdon, joka poimii vihjeensä sarakkeesta A ja tulostaa tulosteen sarakkeeseen B.
Sarakkeessa A olevien solujen kokonaismäärän perusteella voit tulostaa sarakkeen B kahden kerrannaisia. Silmukka suorittaa perussarakkeen A esitäytettyjen solujen kokonaismäärän. Koska aloitusrivin arvo on yksi (a =1), loppuarvo on dynaaminen ja lasketaan automaattisesti do-while-silmukalla.
Riviarvoaan käyttämällä koodi kiertää sarakkeen A jokaisen solun läpi ja kertoo luvun 2:lla. Tulos näkyy sarakkeessa B.
Jos sarakkeessa A on enemmän kuin kymmenen arvoa, silmukka jatkuu, kunnes se kohtaa tyhjän arvon ensimmäisessä sarakkeessa. Vastaavasti voit kirjoittaa vieläkin monimutkaisempia ehtoja do-while-silmukalle ja käyttää sitä olosuhteiden tarkistamiseen ja tulosteen näyttämiseen tarpeen mukaan.
IF-lausekkeen käyttäminen Do-While-silmukassa
Kuten sisäkkäisiä silmukoita, voit käyttää IF-lausetta Do-While-silmukassa lisätäksesi toisen ehtokerroksen. Tässä tapauksessa do-while-silmukka suorittaa koko silmukan, kunnes ehto on False, ja sisäinen IF-käsky suoritetaan joka kerta, kun silmukka suoritetaan.
Alla olevassa esimerkissä do-while-silmukka kiertää jokaisen sarakkeen A solun läpi, kunnes se kohtaa tyhjän solun. Tämän jälkeen IF-lause tarkistaa jokaisen sarakkeen A solun arvon ja tulostaa tulosteen sarakkeessa B. Heti kun ulompi silmukka kohtaa tyhjän solun sarakkeessa A, silmukka pysähtyy ja poistuu alirutiinista.
Tulos on seuraava:
Kunnes sarakkeen A arvo on pienempi kuin viisi, tuloksena oleva arvo sarakkeessa B on viisi. A6:ssa, koska solun arvo on suurempi kuin viisi, tuloksena oleva tulos on seitsemän, mikä on synkronoitu IF-ehdon kanssa.
VBA: n monipuolisten toimintojen purkaminen
Excel ja VBA muodostavat erittäin edullisen yhdistelmän edistyneen data-analyysin suorittamiseen. Myös ilman VBA: ta voit käyttää erilaisia Excelin loogisia toimintoja monimutkaisten tehtävien suorittamiseen, mikä on esimerkki ohjelmointitaitosi.
Jos olet kiinnostunut tietojen analysoinnista ja käytät Exceliä normaalissa toiminnassasi, voit hyötyä valtavasti Excelin monipuolisista loogisista funktioista.