Excel VBA: Loops protseduur selgitati.

Excel VBA lingid

Loops on üks VBA põhilisi ja võimsamaid programmeerimisvahendeid, mida kasutatakse enamikus programmeerimiskeeltes. Loope kasutatakse koodiploki kordamiseks nii palju kordi, kui vaja, kuni antud tingimus jääb kehtima või saavutatakse konkreetne punkt (või väärtus), mille järel teostatakse järgmise koodi osa. Silmus võimaldab teil kirjutada paar lihtsat koodi ja saavutada palju olulisemat väljundit, lihtsalt kordamise teel.
  • Loop jaoks
    • For ... Järgmised avaldused
    • Iga ... Järgmised avaldused
  • Tehke silmusena
    • Kas küll ... Loop Statements
    • Kas ... Loop kuigi avaldused
  • Tehke silmuseni
    • Tehke kuni ... Loop Statements
    • Kas ... Loop kuni avaldusteni

VBA Loops on kolm põhiliiki (jagatud 6 ahelasse allpool):

Loop jaoks

For ... Järgmised avaldused

kordab kindla arvu koodide koodi.

järgmine näide näitab MsgBoxi 5 korda ja kuvab selle numbri.

 Sub F_Next_loop () Dim i kui täisarv i = 1 kuni 5 MsgBox i Järgmine i Lõpeta alam 

Iga ... Järgmised avaldused

Iga ... Järgmine ahel kordab iga grupi objekti iga koodi. See kordab iga koopiaelemendi koodi ploki täitmist. Silmus peatub, kui kõik kollektsiooni elemendid on kaetud ja teostus liigub kohe pärast järgmist avaldusele järgnevat koodiosa.

 Sub F_each_loop () Mõõtke raku aktiivsusega iga raku jaoks ActiveSheet'is.Range ("A1: A10") Cell.Interior.Color = RGB (160, 251, 142) Järgmine lahtri lõpp 

 Väljumise avaldus peatab kohe olemasoleva silmusehituse ja täidab koodi järgmise osa kohe pärast järgmist avaldust. 

Tehke silmusena

kordab koodi plokki määramata ajaks, samal ajal kui määratud tingimus täidetakse ja hinnatakse True väärtuseks ning peatub, kui tingimus muutub valeks. Tingimust saab katsetada kas silmuse alguses või lõpus.

Kas küll ... Loop Statements

testige seisukorda alguses,

 Sub do_While () Dim i as Integer i = 1 Do rakkudes (i, 1) .Value "" MsgBox ii = i + 1 silmus MsgBox i Lõpeta alam 

Kas ... Loop kuigi avaldused

testige olekut Loopi lõpus

 Sub do_While () Dim i as Integer i = 1 Kas MsgBox ii = i + 1 silmus, kui rakud (i, 1) .Väärtus "" MsgBox i Lõpeta alam 

 Väljumise toimingu avaldus lõpetab kohe olemasoleva kontuuri täitmise ja täidab koodi järgmise osa kohe pärast järgmist avaldust. 

Tehke silmuseni

kordab koodi plokki määramata ajaks, kuni tingimus on täidetud ja hindab seda tõeseks. Tingimust saab katsetada kas silmuse alguses või lõpus

Tehke kuni ... Loop Statements

testige seisukorda alguses,

 Sub do_Until () Dim i As Integer i = 1 Kas pole veel tühi (rakud (i, 1)) Rakud (i, 1) .Intern.Color = RGB (255, 0, 0) i = i + 1 silmusepealne alam 

Kas ... Loop kuni avaldusteni

testige olekut Loopi lõpus.

 Sub do_Until () Dim i kui täisarv i = 1 Kas lahtrid (i, 1) .Inter.Color = RGB (255, 0, 0) i = i + 1 silmus kuni pole tühi (lahtrid (i, 1)) Lõpeta alam 
Eelmine Artikkel Järgmine Artikkel

Top Näpunäited