Kaip naudoti „For-Next“ ciklus „Excel 2016 VBA“.

Paprasčiausias „Excel“ VBA programavimo ciklo tipas yra „For-Next“ ciklas. Kilpą valdo skaitiklio kintamasis, kuris prasideda nuo vienos vertės ir sustoja ties kita. Teiginiai tarp teiginių „For“ ir „Next“ yra teiginiai, kurie kartojasi cikle.

„For-Next“ pavyzdys

Šiame pavyzdyje pirmiesiems 1 000 teigiamų skaičių sumuojama naudojama For-Next kilpa. Bendras kintamasis prasideda nuo nulio. Tada įvyksta kilpa. Kintamasis Cnt yra kilpos skaitiklis. Jis prasideda kaip 1 ir kiekvieną kartą per kilpą didinamas 1. Ciklas baigiasi, kai Cnt yra 1000.

Šiame pavyzdyje ciklo viduje yra tik vienas teiginys. Šis teiginys prideda Cnt reikšmę prie kintamojo Total. Kai ciklas baigiasi, MsgBox rodo skaičių sumą.

Papildomi numeriai ()
  Pritemdytas viso kaip dvigubas
  Dim Cnt As Long
  Iš viso = 0
  Kai Cnt = 1 iki 1000
    Iš viso = Iš viso + Cnt
  Kitas Cnt
  „MsgBox“ iš viso
Pabaigos sub

Kadangi ciklo skaitiklis yra įprastas kintamasis, galite parašyti kodą, kad pakeistumėte jo reikšmę kodo bloke tarp For ir Next sakinių. Tačiau tai yra labai bloga praktika.

For-Next pavyzdžiai su žingsniu

Galite naudoti žingsnio reikšmę, norėdami praleisti kai kurias skaitiklio reikšmes cikle For-Next. Štai ankstesnis pavyzdys, perrašytas taip, kad būtų sumuojami tik nelyginiai skaičiai nuo 1 iki 1 000:

Sub AddOddNumbers()
  Pritemdytas viso kaip dvigubas
  Dim Cnt As Long
  Iš viso = 0
  Jei Cnt = 1–1000, 2 veiksmas
    Iš viso = Iš viso + Cnt
  Kitas Cnt
  „MsgBox“ iš viso
Pabaigos sub

Šį kartą Cnt prasideda kaip 1, o tada įgyja 3, 5, 7 ir tt reikšmes. Žingsnio reikšmė nustato, kaip skaitiklis didinamas. Atkreipkite dėmesį, kad viršutinė kilpos reikšmė (1000) iš tikrųjų nenaudojama, nes didžiausia Cnt reikšmė bus 999.

Štai dar vienas pavyzdys, kuriame naudojama 3 žingsnio reikšmė. Ši procedūra veikia su aktyviu lapu ir taiko šviesiai pilką atspalvį kiekvienai trečiai eilutei nuo 1 iki 100 eilutės.

Sub ShadeEveryThirdRow()
  Dim i As Long
  Jei i = 1–100, 3 veiksmas
    Eilutės(i).Interjeras.Spalva = RGB(200, 200, 200)
  Toliau i
Pabaigos sub

Patikrinkite šios makrokomandos paleidimo rezultatą.

Kaip naudoti „For-Next“ ciklus „Excel 2016 VBA“.

Kilpos naudojimas fono šešėliavimui pritaikyti eilutėms.

„For-Next“ pavyzdys su „Exit For“ teiginiu

„For-Next“ ciklas taip pat gali apimti vieną ar daugiau „Exit For“ teiginių cikle. Kai VBA susiduria su šiuo teiginiu, ciklas nedelsiant nutraukiamas.

Toliau pateiktame pavyzdyje parodytas teiginys Exit For. Ši procedūra yra funkcijos procedūra, skirta naudoti darbalapio formulėje. Funkcija priima vieną argumentą (kintamąjį, pavadintą Str) ir grąžina simbolius į kairę nuo pirmojo skaitmeninio skaitmens. Pavyzdžiui, jei argumentas yra „KBR98Z“, funkcija grąžina „KBR“.

Funkcijos teksto dalis (Str)
  Dim i As Long
  TextPart = ""
  Jei i = 1 iki Len (Str)
    Jei yra skaičius(Mid(Str, i, 1)) Tada
      Išeiti už
    Kitas
      Teksto dalis = TextPart & Mid(Str, i, 1)
    Pabaiga, jei
  Toliau i
Pabaigos funkcija

Ciklas For-Next prasideda skaičiumi 1 ir baigiasi skaičiumi, nurodančiu simbolių skaičių eilutėje. Kodas naudoja VBA vidurio funkciją, kad ištrauktų vieną simbolį cikle. Jei randamas skaitinis simbolis, vykdomas sakinys Exit For ir ciklas baigiasi anksčiau laiko.

Jei simbolis nėra skaitinis, jis pridedamas prie grąžinamos reikšmės (kuri yra tokia pati kaip funkcijos pavadinimas). Vienintelis kartas, kai ciklas ištirs kiekvieną simbolį, yra tada, jei eilutėje, kuri perduodama argumente, nėra skaitinių simbolių.

Įdėtas sekančiam pavyzdys

Cikloje galite turėti bet kokį teiginių skaičių ir sudėti For-Next kilpas kitose For-Next kilpose.

Šiame pavyzdyje naudojama įdėta For-Next kilpa atsitiktiniams skaičiams įterpti į 12 eilučių po 5 stulpelių langelių diapazoną. Atkreipkite dėmesį, kad rutina vieną kartą vykdo vidinę kilpą (ciklą su eilučių skaitikliu) kiekvienai išorinės kilpos (ciklo su Col skaitikliu) iteracijai . Kitaip tariant, rutina 60 kartų vykdo sakinį Cells(Row, Col) = Rnd.

Kaip naudoti „For-Next“ ciklus „Excel 2016 VBA“.

Šios ląstelės buvo užpildytos naudojant įdėtą For-Next kilpą.

Sub FillRange()
  Dim Col As Long
  Dim Row As Long
  Jei Col = nuo 1 iki 5
    Eilutei = nuo 1 iki 12
      Ląstelės (eilutė, kolona) = Rnd
    Kita eilutė
  Kitas plk
Pabaigos sub

Kitame pavyzdyje naudojamos įdėtos For-Next kilpos, kad inicijuotų trimatį masyvą su reikšme 100. Ši rutina įvykdo sakinį visų ciklų viduryje (priskyrimo sakinys) 1000 kartų (10 * 10 * 10), kiekvieną kartą su skirtingu i, j ir k reikšmių deriniu:

Sub NestedLoops ()
  Dim MyArray (10, 10, 10)
  Dim i As Long
  Dim j Kaip Ilgas
  Dim k As Long
  Jei i = 1-10
    Jei j = 1–10
      Jei k = 1-10
        Mano masyvas(i, j, k) = 100
    Kitas k
  Kitas j
Toliau i
  Kiti teiginiai pateikiami čia
Pabaigos sub

Štai paskutinis pavyzdys, kuriame naudojamos įdėtos For-Next kilpos su žingsnio reikšme. Ši procedūra sukuria šaškių lentą, pakeisdama kintančių langelių fono spalvą.

Kaip naudoti „For-Next“ ciklus „Excel 2016 VBA“.

Kilpų naudojimas šaškių lentos raštui sukurti.

Eilučių skaitiklis sukasi nuo 1 iki 8. Konstrukcija „If-Then“ nustato, kurią įdėtą „For-Next“ struktūrą naudoti. Nelyginių eilučių Col skaitiklis prasideda skaičiumi 2. Lyginių eilučių Col skaitiklis prasideda 1. Abiejose kilpose naudojama 2 žingsnio reikšmė, todėl paveikiami alternatyvūs langeliai. Du papildomi teiginiai padaro langelius kvadratiniais (kaip tikra šaškių lenta).

Sub MakeCheckerboard()
  Dim R As Long, C As Long
  Jei R = 1-8
    Jei WorksheetFunction.IsOdd(R) Tada
     Jei C = 2–8, 2 veiksmas
       Ląstelės (R, C).Interjeras.Spalva = 255
     Kitas C
    Kitas
     Jei C = 1–8, 2 veiksmas
       Ląstelės (R, C).Interjeras.Spalva = 255
     Kitas C
    Pabaiga, jei
  Toliau R
  Eilutės („1:8“). Eilutės aukštis = 35
  Stulpeliai („A:H“).Stulpelio plotis = 6,5
Pabaigos sub

Kaip neleisti „Microsoft Word“ atidaryti failų tik skaitymo režimu sistemoje „Windows“.

Kaip neleisti „Microsoft Word“ atidaryti failų tik skaitymo režimu sistemoje „Windows“.

Kaip neleisti Microsoft Word atidaryti failų tik skaitymo režimu sistemoje Windows. Microsoft Word atidaro failus tik skaitymo režimu, todėl jų redaguoti neįmanoma? Nesijaudinkite, metodai pateikiami žemiau

Kaip ištaisyti neteisingą Microsoft Word dokumentų spausdinimą

Kaip ištaisyti neteisingą Microsoft Word dokumentų spausdinimą

Kaip ištaisyti klaidas spausdinant neteisingus Microsoft Word dokumentus.Klaidos spausdinant Word dokumentus su pakeistais šriftais, netvarkingomis pastraipomis, trūkstamo teksto ar prarasto turinio yra gana dažnos. Tačiau nereikia

Ištrinkite rašiklio ir paryškinimo piešinius savo „PowerPoint“ skaidrėse

Ištrinkite rašiklio ir paryškinimo piešinius savo „PowerPoint“ skaidrėse

Jei naudodami rašiklį ar žymeklį piešėte ant savo PowerPoint skaidrės pristatymo metu, galite išsaugoti brėžinius kitam pristatymui arba ištrinti juos, kad kitą kartą rodydami pradėtumėte nuo švarių PowerPoint skaidrių. Vykdykite šias instrukcijas, kad ištrintumėte rašiklio ir žymeklio piešinius: Trinti linijas po vieną […]

Stilių bibliotekos turinys „SharePoint 2010“.

Stilių bibliotekos turinys „SharePoint 2010“.

Stilių bibliotekoje yra CSS failų, XSL (Extensible Stylesheet Language) failų ir vaizdų, naudojamų iš anksto nustatytų puslapių puslapiuose, puslapių išdėstymuose ir valdikliuose „SharePoint 2010“. Norėdami rasti CSS failus publikavimo svetainės stilių bibliotekoje: pasirinkite Svetainės veiksmai → Peržiūrėti Visas svetainės turinys. Pasirodo svetainės turinys. Stiliaus biblioteka yra […]

Formatuokite skaičius tūkstančiais ir milijonais „Excel“ ataskaitose

Formatuokite skaičius tūkstančiais ir milijonais „Excel“ ataskaitose

Neužkraukite savo auditorijos milžiniškais skaičiais. Programoje „Microsoft Excel“ galite pagerinti informacijos suvestinių ir ataskaitų skaitomumą formatuodami skaičius, kad jie būtų rodomi tūkstančiais arba milijonais.

Kaip bendrinti ir stebėti „SharePoint“ svetaines

Kaip bendrinti ir stebėti „SharePoint“ svetaines

Sužinokite, kaip naudoti „SharePoints“ socialinių tinklų įrankius, leidžiančius asmenims ir grupėms bendrauti, bendradarbiauti, bendrinti ir prisijungti.

Kaip konvertuoti datas į Juliano formatus programoje „Excel“.

Kaip konvertuoti datas į Juliano formatus programoje „Excel“.

Julijaus datos dažnai naudojamos gamybos aplinkoje kaip laiko žyma ir greita partijos numerio nuoroda. Šio tipo datos kodavimas leidžia mažmenininkams, vartotojams ir paslaugų agentams nustatyti, kada produktas buvo pagamintas, taigi ir produkto amžių. Julijaus datos taip pat naudojamos programavimo, kariuomenės ir astronomijos srityse. Skirtingi […]

Kaip sukurti „Access“ žiniatinklio programą

Kaip sukurti „Access“ žiniatinklio programą

Galite sukurti žiniatinklio programą naudodami „Access 2016“. Taigi, kas vis dėlto yra žiniatinklio programa? Na, žiniatinklis reiškia, kad jis yra internete, o programa yra tik „programos“ santrumpa. Pasirinktinė žiniatinklio programa yra internetinė duomenų bazės programa, pasiekiama iš debesies naudojant naršyklę. Kuriate ir prižiūrite žiniatinklio programą darbalaukio versijoje […]

Greitosios paleidimo juosta „SharePoint 2010“.

Greitosios paleidimo juosta „SharePoint 2010“.

Daugumoje „SharePoint 2010“ puslapių sparčiojo paleidimo juostoje, esančioje kairėje puslapio pusėje, pateikiamas naršymo nuorodų sąrašas. Greitosios paleidimo juostoje rodomos nuorodos į siūlomą svetainės turinį, pvz., sąrašus, bibliotekas, svetaines ir publikavimo puslapius. Greitojo paleidimo juostoje yra dvi labai svarbios nuorodos: Visas svetainės turinys: […]

Ką reiškia „Excel“ sprendimo klaidų pranešimai?

Ką reiškia „Excel“ sprendimo klaidų pranešimai?

Paprastoms problemoms spręsti „Excel“ sprendėjas paprastai greitai suranda optimalias tikslinės funkcijos „Solver“ kintamųjų reikšmes. Tačiau kai kuriais atvejais „Solver“ turi problemų ieškant „Solver“ kintamųjų reikšmių, optimizuojančių tikslo funkciją. Tokiais atvejais „Solver“ paprastai rodo pranešimą arba klaidos pranešimą, kuriame aprašoma arba aptariama problema, kurią […]