Kako koristiti For-Next petlje u Excel 2016 VBA

Najjednostavniji tip petlje u Excel VBA programiranju je For-Next petlja. Petlja je kontrolirana varijablom brojača, koja počinje na jednoj vrijednosti i zaustavlja se na drugoj vrijednosti. Naredbe između izraza For i sljedećeg iskaza su izjave koje se ponavljaju u petlji.

Primjer For-Next

Sljedeći primjer koristi For-Next petlju za zbrajanje prvih 1000 pozitivnih brojeva. Varijabla Total počinje kao nula. Tada dolazi do petlje. Varijabla Cnt je brojač petlje. Počinje kao 1 i svaki put se povećava za 1 kroz petlju. Petlja završava kada je Cnt 1000.

Ovaj primjer ima samo jedan izraz unutar petlje. Ova izjava dodaje vrijednost Cnt varijabli Total. Kada se petlja završi, MsgBox prikazuje zbroj brojeva.

Podbrojevi dodavanja()
  Dim Total kao duplo
  Dim Cnt As Long
  Ukupno = 0
  Za Cnt = 1 do 1000
    Ukupno = Ukupno + Cnt
  Sljedeći Cnt
  MsgBox Ukupno
Kraj Sub

Budući da je brojač petlje normalna varijabla, možete napisati kod kako biste promijenili njegovu vrijednost unutar bloka koda između izraza For i Next. To je, međutim, vrlo loša praksa.

For-Next primjeri s korakom

Možete koristiti vrijednost koraka da preskočite neke vrijednosti brojača u petlji For-Next. Evo prethodnog primjera, prepisanog da zbroji samo neparne brojeve između 1 i 1000:

Sub AddOddNumbers()
  Dim Total kao duplo
  Dim Cnt As Long
  Ukupno = 0
  Za Cnt = 1 do 1000 Korak 2
    Ukupno = Ukupno + Cnt
  Sljedeći Cnt
  MsgBox Ukupno
Kraj Sub

Ovaj put, Cnt počinje kao 1, a zatim poprima vrijednosti od 3, 5, 7 itd. Vrijednost koraka određuje kako se brojač povećava. Primijetite da se gornja vrijednost petlje (1000) zapravo ne koristi jer će najviša vrijednost Cnt biti 999.

Evo još jednog primjera koji koristi vrijednost koraka 3. Ovaj postupak radi s aktivnim listom i primjenjuje svijetlosivo sjenčanje na svaki treći red, od retka 1 do retka 100.

PodsjenaSvaki Treći Red()
  Dim i As Long
  Za i = 1 do 100, korak 3
    Redovi(i).Interior.Boja = RGB(200, 200, 200)
  Sljedeći i
Kraj Sub

Provjerite rezultat pokretanja ove makronaredbe.

Kako koristiti For-Next petlje u Excel 2016 VBA

Korištenje petlje za primjenu sjenčanja pozadine na retke.

Primjer For-Next s naredbom Exit For

Petlja For-Next također može uključivati ​​jedan ili više naredbi Exit For unutar petlje. Kada VBA naiđe na ovu izjavu, petlja se odmah završava.

Sljedeći primjer pokazuje naredbu Exit For. Ova rutina je funkcija funkcije, namijenjena za korištenje u formuli radnog lista. Funkcija prihvaća jedan argument (varijabla pod nazivom Str) i vraća znakove lijevo od prve brojčane znamenke. Na primjer, ako je argument "KBR98Z", funkcija vraća "KBR".

Funkcija TextPart(Str)
  Dim i As Long
  Tekstualni dio = ""
  Za i = 1 do Len(Str)
    Ako je Numerički(sredina(Str, i, 1)) Onda
      Izlaz za
    Drugo
      TextPart = TextPart & Mid(Str, i, 1)
    Završi ako
  Sljedeći i
Završna funkcija

Petlja For-Next počinje s 1 i završava brojem koji predstavlja broj znakova u nizu. Kod koristi VBA-ovu Mid funkciju za izdvajanje jednog znaka unutar petlje. Ako se pronađe numerički znak, izvršava se naredba Exit For, a petlja se prerano završava.

Ako znak nije numerički, dodaje se vraćenoj vrijednosti (koja je ista kao i naziv funkcije). Jedini put kada će petlja ispitati svaki znak je ako niz proslijeđen kao argument ne sadrži numeričke znakove.

Ugniježđeni primjer For-Next

Možete imati bilo koji broj izraza u petlji i ugnijezditi For-Next petlje unutar drugih For-Next petlji.

Sljedeći primjer koristi ugniježđenu petlju For-Next za umetanje slučajnih brojeva u raspon ćelija od 12 redaka po 5 stupaca. Primijetite da rutina izvršava unutarnju petlju (petlju s brojačem redaka) jednom za svaku iteraciju vanjske petlje (petlja s brojačem Col). Drugim riječima, rutina izvršava naredbu Cells(Row, Col) = Rnd 60 puta.

Kako koristiti For-Next petlje u Excel 2016 VBA

Ove ćelije su ispunjene korištenjem ugniježđene For-Next petlje.

Podraspon popunjavanja()
  Dim Col As Long
  Dim Row As Long
  Za Col = 1 do 5
    Za red = 1 do 12
      Stanice (Red, Col) = Rnd
    Sljedeći red
  Sljedeći pukovnik
Kraj Sub

Sljedeći primjer koristi ugniježđene petlje For-Next za inicijalizaciju trodimenzionalnog niza s vrijednošću 100. Ova rutina izvršava naredbu u sredini svih petlji (izjava o dodjeli) 1000 puta (10 * 10 * 10), svaki put s različitom kombinacijom vrijednosti za i, j i k:

Sub NestedLoops()
  Dim MyArray(10, 10, 10)
  Dim i As Long
  Dim j As Long
  Dim k As Long
  Za i = 1 do 10
    Za j = 1 do 10
      Za k = 1 do 10
        Moj niz (i, j, k) = 100
    Sljedeći k
  Sljedeći j
Sljedeći i
  ' Ostale izjave idu ovdje
Kraj Sub

Evo posljednjeg primjera koji koristi ugniježđene For-Next petlje, s vrijednošću Step. Ovaj postupak stvara šahovnicu promjenom boje pozadine izmjeničnih ćelija.

Kako koristiti For-Next petlje u Excel 2016 VBA

Korištenje petlji za stvaranje uzorka šahovnice.

Brojač redaka se kreće od 1 do 8. Konstrukt If-Then određuje koju će ugniježđenu For-Next strukturu koristiti. Za retke s neparnim brojem, Col brojač počinje s 2. Za parne retke, Col brojač počinje s 1. Obje petlje koriste vrijednost koraka od 2, tako da su zahvaćene alternativne ćelije. Dvije dodatne izjave čine ćelije četvrtastim (baš kao prava šahovnica).

Sub MakeCheckerboard()
  Dim R kao dugo, C kao dugo
  Za R = 1 do 8
    Ako WorksheetFunction.IsOdd(R) Onda
     Za C = 2 do 8, korak 2
       Ćelije (R, C). Interijer. Boja = 255
     Sljedeći C
    Drugo
     Za C = 1 do 8, korak 2
       Ćelije (R, C). Interijer. Boja = 255
     Sljedeći C
    Završi ako
  Sljedeći R
  Redovi (“1:8”). Visina reda = 35
  Stupci(“A:H”).Širina stupca = 6,5
Kraj Sub

Leave a Comment

Kako postaviti upit u bazu podataka MS Access 2019

Kako postaviti upit u bazu podataka MS Access 2019

Naučite kako postaviti upite u Access bazi podataka uz jednostavne korake i savjete za učinkovito filtriranje i sortiranje podataka.

Osnove tabulatora u programu Word 2013

Osnove tabulatora u programu Word 2013

Tabulatori su oznake položaja u odlomku programa Word 2013 koje određuju kamo će se točka umetanja pomaknuti kada pritisnete tipku Tab. Otkrijte kako prilagoditi tabulatore i optimizirati svoj rad u Wordu.

Kako odabrati i poništiti odabir blokova teksta u Wordu 2010

Kako odabrati i poništiti odabir blokova teksta u Wordu 2010

Word 2010 nudi mnoge načine označavanja i poništavanja odabira teksta. Otkrijte kako koristiti tipkovnicu i miš za odabir blokova. Učinite svoj rad učinkovitijim!

Kako uvući pasus u Wordu 2013

Kako uvući pasus u Wordu 2013

Naučite kako pravilno postaviti uvlaku za odlomak u Wordu 2013 kako biste poboljšali izgled svog dokumenta.

Kako otvoriti i zatvoriti PowerPoint 2019 prezentacije

Kako otvoriti i zatvoriti PowerPoint 2019 prezentacije

Naučite kako jednostavno otvoriti i zatvoriti svoje Microsoft PowerPoint 2019 prezentacije s našim detaljnim vodičem. Pronađite korisne savjete i trikove!

Kako crtati jednostavne objekte u PowerPointu 2013

Kako crtati jednostavne objekte u PowerPointu 2013

Saznajte kako crtati jednostavne objekte u PowerPoint 2013 uz ove korisne upute. Uključuje crtanje linija, pravokutnika, krugova i više.

Kako filtrirati podatke u programu Access 2016

Kako filtrirati podatke u programu Access 2016

U ovom vodiču vam pokazujemo kako koristiti alat za filtriranje u programu Access 2016 kako biste lako prikazali zapise koji dijele zajedničke vrijednosti. Saznajte više o filtriranju podataka.

Formule za zaokruživanje brojeva u Excelu

Formule za zaokruživanje brojeva u Excelu

Saznajte kako koristiti Excelove funkcije zaokruživanja za prikaz čistih, okruglih brojeva, što može poboljšati čitljivost vaših izvješća.

Kako dizajnirati različita zaglavlja i podnožja za različite stranice u programu Word 2013

Kako dizajnirati različita zaglavlja i podnožja za različite stranice u programu Word 2013

Zaglavlje ili podnožje koje postavite isto je za svaku stranicu u vašem Word 2013 dokumentu. Otkrijte kako koristiti različita zaglavlja za parne i neparne stranice.

Excel izvješća: prilagođeno oblikovanje brojeva

Excel izvješća: prilagođeno oblikovanje brojeva

Poboljšajte čitljivost svojih Excel izvješća koristeći prilagođeno oblikovanje brojeva. U ovom članku naučite kako se to radi i koja su najbolja rješenja.