Si të përdorni sythe For-Next në Excel 2016 VBA

Lloji më i thjeshtë i ciklit në programimin Excel VBA është një cikli For-Next. Looping kontrollohet nga një variabël numërues, i cili fillon në një vlerë dhe ndalon në një vlerë tjetër. Deklaratat midis deklaratës For dhe deklaratës Next janë pohimet që përsëriten në ciklin.

Një shembull për-Next

Shembulli i mëposhtëm përdor një cikli For-Next për të përmbledhur 1000 numrat e parë pozitivë. Variabli Total fillon si zero. Pastaj ndodh looping. Ndryshorja Cnt është numëruesi i ciklit. Fillon si 1 dhe rritet me 1 çdo herë përmes ciklit. Cikli përfundon kur Cnt është 1000.

Ky shembull ka vetëm një deklaratë brenda ciklit. Kjo deklaratë shton vlerën e Cnt në ndryshoren Total. Kur cikli përfundon, një MsgBox shfaq shumën e numrave.

Nën AddNumbers()
  Dim Total Si Dyfish
  Dim Cnt Për aq kohë sa
  Gjithsej = 0
  Për Cnt = 1 deri në 1000
    Total = Total + Cnt
  Tjetër Cnt
  MsgBox Total
Fundi Nën

Për shkak se numëruesi i ciklit është një variabël normal, ju mund të shkruani kod për të ndryshuar vlerën e tij brenda bllokut të kodit midis deklaratave For dhe Next. Megjithatë, kjo është një praktikë shumë e keqe .

Shembuj për-Next me një hap

Ju mund të përdorni një vlerë Hapi për të kapërcyer disa vlera numërues në një cikli For-Next. Këtu është shembulli i mëparshëm, i rishkruar për të mbledhur vetëm numrat tek midis 1 dhe 1000:

Nën AddOddNumbers()
  Dim Total Si Dyfish
  Dim Cnt Për aq kohë sa
  Gjithsej = 0
  Për Cnt = 1 në 1000 Hapi 2
    Total = Total + Cnt
  Tjetër Cnt
  MsgBox Total
Fundi Nën

Këtë herë, Cnt fillon si 1 dhe më pas merr vlerat 3, 5, 7, e kështu me radhë. Vlera Step përcakton se si rritet numëruesi. Vini re se vlera e ciklit të sipërm (1000) nuk përdoret në fakt sepse vlera më e lartë e Cnt do të jetë 999.

Ja një shembull tjetër që përdor një vlerë Step prej 3. Kjo procedurë funksionon me fletën aktive dhe aplikon hije gri të lehta për çdo rresht të tretë, nga rreshti 1 në rreshtin 100.

Nën ShadeEveryThirdRow()
  Dim i Sa Long
  Për i = 1 në 100 Hapi 3
    Rreshtat(i).E brendshme.Ngjyra = RGB(200, 200, 200)
  Tjetra i
Fundi Nën

Shikoni rezultatin e ekzekutimit të kësaj makro.

Si të përdorni sythe For-Next në Excel 2016 VBA

Përdorimi i një cikli për të aplikuar hijezimin e sfondit në rreshta.

Një shembull For-Next me një deklaratë Exit For

Një cikli For-Next mund të përfshijë gjithashtu një ose më shumë deklarata Exit For brenda ciklit. Kur VBA ndeshet me këtë deklaratë, cikli përfundon menjëherë.

Shembulli i mëposhtëm demonstron deklaratën Exit For. Kjo rutinë është një procedurë funksioni, e destinuar për t'u përdorur në një formulë të fletës së punës. Funksioni pranon një argument (një variabël me emrin Str) dhe i kthen karakteret në të majtë të shifrës së parë numerike. Për shembull, nëse argumenti është "KBR98Z", funksioni kthen "KBR".

Funksioni TextPart(Str)
  Dim i Sa Long
  TextPart = ""
  Për i = 1 në Len (Rr)
    Nëse IsNumeric(Mid(Str, i, 1)) Atëherë
      Dil Për
    Përndryshe
      TextPart = TextPart & Mid(Rr, i, 1)
    Fundi Nëse
  Tjetra i
Funksioni i Fundit

Cikli For-Next fillon me 1 dhe përfundon me numrin që përfaqëson numrin e karaktereve në varg. Kodi përdor funksionin Mid të VBA për të nxjerrë një karakter të vetëm brenda ciklit. Nëse gjendet një karakter numerik, ekzekutohet deklarata Exit For dhe cikli përfundon para kohe.

Nëse karakteri nuk është numerik, ai i shtohet vlerës së kthyer (e cila është e njëjtë me emrin e funksionit). E vetmja herë kur cikli do të ekzaminojë çdo karakter është nëse vargu i kaluar si argument nuk përmban karaktere numerike.

Një shembull i mbivendosur For-Next

Ju mund të keni çdo numër deklaratash në ciklin dhe të vendosni unazat For-Next brenda sytheve të tjera For-Next.

Shembulli i mëposhtëm përdor një cikli të mbivendosur For-Next për të futur numra të rastësishëm në një gamë qelizash me 12 rreshta për 5 kolona. Vini re se rutina ekzekuton ciklin e brendshëm (ciklin me numëruesin e rreshtit) një herë për çdo përsëritje të ciklit të jashtëm (cikli me numëruesin Col). Me fjalë të tjera, rutina ekzekuton deklaratën Cells(Row, Col) = Rnd 60 herë.

Si të përdorni sythe For-Next në Excel 2016 VBA

Këto qeliza u mbushën duke përdorur një lak të ndërthurur For-Next.

Nën Fillimi Range()
  Dim Col Sa Long
  Rreshti i zbehtë për aq kohë sa
  Për Kol = 1 deri në 5
    Për rreshtin = 1 deri në 12
      Cells(Rresht, Kol) = Rnd
    Rreshti tjetër
  Kol
Fundi Nën

Shembulli tjetër përdor unazat e mbivendosura For-Next për të inicializuar një grup tre-dimensional me vlerën 100. Kjo rutinë ekzekuton deklaratën në mes të të gjitha sytheve (deklarata e caktimit) 1000 herë (10 * 10 * 10), çdo herë me një kombinim të ndryshëm vlerash për i, j dhe k:

Nën NestedLoops()
  Dim MyArray (10, 10, 10)
  Dim i Sa Long
  Dim j Sa kohë
  Dim k Sa gjate
  Për i = 1 deri në 10
    Për j = 1 deri në 10
      Për k = 1 deri në 10
        MyArray(i, j, k) = 100
    Tjetra k
  Tjetra j
Tjetra i
  Deklaratat e tjera shkojnë këtu
Fundi Nën

Ja një shembull i fundit që përdor sythe të mbivendosur For-Next, me një vlerë Step. Kjo procedurë krijon një tabelë duke ndryshuar ngjyrën e sfondit të qelizave të alternuara.

Si të përdorni sythe For-Next në Excel 2016 VBA

Përdorimi i sytheve për të krijuar një model shahu.

Numëruesi i rreshtit qarkullon nga 1 në 8. Një konstruksion If-Then përcakton se cilën strukturë të mbivendosur For-Next do të përdoret. Për rreshtat me numër tek, numëruesi Col fillon me 2. Për rreshtat me numër çift, numëruesi Col fillon me 1. Të dy unazat përdorin një vlerë Step prej 2, kështu që qelizat alternative preken. Dy deklarata shtesë i bëjnë qelizat katrore (ashtu si një tabelë e vërtetë shahu).

Nën MakeCheckerboard()
  Dim R për sa kohë, C për aq kohë
  Për R = 1 deri në 8
    If WorksheetFunction.IsOdd(R) Pastaj
     Për C = 2 në 8 Hapi 2
       Qeliza(R, C).E brendshme.Ngjyra = 255
     Tjetra C
    Përndryshe
     Për C = 1 në 8 Hapi 2
       Qeliza(R, C).E brendshme.Ngjyra = 255
     Tjetra C
    Fundi Nëse
  Tjetra R
  Rreshtat (“1:8”). Lartësia e rreshtit = 35
  Kolonat(“A:H”).Gjerësia e kolonës = 6.5
Fundi Nën

Leave a Comment

Si të shkruani shënime në OneNote 2013 në Android

Si të shkruani shënime në OneNote 2013 në Android

Mësoni si të shkruani shënime në OneNote 2013 në Android me krijimin, hapjen dhe regjistrimin e shënimeve. Aplikoni strategji efektive për menaxhimin e shënimeve tuaja.

Formatimi i numrave në një varg teksti në Excel

Formatimi i numrave në një varg teksti në Excel

Mësoni si të formatoni numrat në një varg teksti në Excel për të përfshirë informacione të sakta dhe tërheqëse për raportet tuaja.

Si të fshini qelizat dhe të dhënat në Excel 2010

Si të fshini qelizat dhe të dhënat në Excel 2010

Në Excel 2010, fshini të dhënat apo formatin e qelizave lehtësisht me disa metoda të thjeshta. Mësoni si të menaxhoni përmbajtjen e qelizave me opsione të ndryshme.

Formatimi i elementeve të grafikut të Excel 2007

Formatimi i elementeve të grafikut të Excel 2007

Zhvilloni aftësitë tuaja në formatimin e elementeve të grafikut në Excel 2007 përmes metodave të thjeshta dhe efikase.

Si të rreshtoni dhe justifikoni tekstin në Word 2010

Si të rreshtoni dhe justifikoni tekstin në Word 2010

Mësoni se si të rreshtoni dhe justifikoni tekstin në Word 2010 me opsione të ndryshme rreshtimi dhe justifikimi për të përmirësuar formatimin e dokumenteve tuaja.

Excel 2019: Si të krijoni makro Excel për të automatizuar komandat

Excel 2019: Si të krijoni makro Excel për të automatizuar komandat

Mësoni si të krijoni makro në Excel 2019 për të automatizuar komandat dhe thjeshtuar detyrat tuaja.

Si të përdorni vizoren për të vendosur skeda në Word 2016

Si të përdorni vizoren për të vendosur skeda në Word 2016

Mënyra vizuale dhe e shpejtë për të vendosur një ndalesë skedash në Word 2016 është përdorimi i vizores. Zbulo disa këshilla dhe truke për përdorimin e skedave në këtë program.

Formatimi i boshtit X dhe boshtit Y në grafikët e Excel 2007

Formatimi i boshtit X dhe boshtit Y në grafikët e Excel 2007

Mësoni si të formula boshtet X dhe Y në Excel 2007, duke përfshirë mundësitë e ndryshimit të formatimeve për grafikët e ndryshëm.

Statistika të thjeshta në analizën e të dhënave në Excel

Statistika të thjeshta në analizën e të dhënave në Excel

Eksploroni se si Excel mund t

Gjetja dhe zëvendësimi i të dhënave në Excel 2007

Gjetja dhe zëvendësimi i të dhënave në Excel 2007

Mësoni se si të përdorni veçorinë Find and Replace të Excel 2007 për të gjetur dhe zëvendësuar të dhëna në mënyrë efikase. Kjo udhëzues është e përshtatshme për të gjithë përdoruesit që dëshirojnë të rrisin produktivitetin e tyre.