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õpusSub 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õpusTehke 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