Kā izmantot For-Next cilpas programmā Excel 2016 VBA

Vienkāršākais cilpas veids programmā Excel VBA ir For-Next cilpa. Cilpu kontrolē skaitītāja mainīgais, kas sākas ar vienu vērtību un apstājas pie citas vērtības. Paziņojumi starp priekšrakstu For un Next ir paziņojumi, kas tiek atkārtoti cilpas laikā.

Piemērs Nākamajam

Nākamajā piemērā tiek izmantota cilpa For-Next, lai summētu pirmos 1000 pozitīvos skaitļus. Mainīgais Kopējais sākas ar nulli. Tad notiek cilpa. Mainīgais Cnt ir cilpas skaitītājs. Tas sākas ar 1 un katru reizi tiek palielināts par 1, izmantojot cilpu. Cilpa beidzas, kad Cnt ir 1000.

Šajā piemērā cilpas iekšpusē ir tikai viens paziņojums. Šis paziņojums pievieno Cnt vērtību mainīgajam Total. Kad cilpa beidzas, MsgBox parāda skaitļu summu.

Sub AddNumbers()
  Dim Total As Double
  Dim Cnt Tik ilgi
  Kopā = 0
  Ja Cnt = 1 līdz 1000
    Kopā = Kopā + Cnt
  Nākamais Cnt
  MsgBox kopā
Beigu apakš

Tā kā cilpas skaitītājs ir parasts mainīgais, varat rakstīt kodu, lai mainītu tā vērtību koda blokā starp priekšrakstiem For un Next. Tomēr tā ir ļoti slikta prakse.

For-Next piemēri ar soli

Varat izmantot Step vērtību, lai izlaistu dažas skaitītāja vērtības cilpā For-Next. Šis ir iepriekšējais piemērs, kas pārrakstīts, lai summētu tikai nepāra skaitļus no 1 līdz 1000:

Sub AddOddNumbers()
  Dim Total As Double
  Dim Cnt Tik ilgi
  Kopā = 0
  Ja Cnt = 1 līdz 1000, 2. darbība
    Kopā = Kopā + Cnt
  Nākamais Cnt
  MsgBox kopā
Beigu apakš

Šoreiz Cnt sākas ar 1 un pēc tam iegūst vērtības 3, 5, 7 utt. Step vērtība nosaka, kā skaitītājs tiek palielināts. Ņemiet vērā, ka augšējā cilpas vērtība (1000) faktiski netiek izmantota, jo lielākā Cnt vērtība būs 999.

Šeit ir vēl viens piemērs, kurā tiek izmantota soļa vērtība 3. Šī procedūra darbojas ar aktīvo lapu un katrai trešajai rindai piemēro gaiši pelēku ēnojumu no 1. līdz 100. rindai.

Sub ShadeEveryThirdRow()
  Dim i As Long
  Ja i = 1 līdz 100, 3. darbība
    Rindas(i). Interjers. Krāsa = RGB(200, 200, 200)
  Nākamais i
Beigu apakš

Apskatiet šī makro palaišanas rezultātu.

Kā izmantot For-Next cilpas programmā Excel 2016 VBA

Izmantojot cilpu, lai rindām lietotu fona ēnojumu.

Piemērs For-Next ar paziņojumu Exit For

For-Next cilpa var ietvert arī vienu vai vairākus Exit For priekšrakstus cilpas ietvaros. Kad VBA saskaras ar šo paziņojumu, cilpa nekavējoties tiek pārtraukta.

Nākamajā piemērā ir parādīts priekšraksts Exit For. Šī rutīna ir funkciju procedūra, kas paredzēta izmantošanai darblapas formulā. Funkcija pieņem vienu argumentu (mainīgo ar nosaukumu Str) un atgriež rakstzīmes pa kreisi no pirmā ciparu cipara. Piemēram, ja arguments ir “KBR98Z”, funkcija atgriež “KBR”.

Funkcijas teksta daļa (Str)
  Dim i As Long
  TextPart = ""
  Ja i = 1 līdz Len(Str)
    Ja IsNumeric(Mid(Str, i, 1)) Tad
      Iziet uz
    Citādi
      TextPart = TextPart & Mid(Str, i, 1)
    Beigas Ja
  Nākamais i
Beigu funkcija

Cilpa For-Next sākas ar 1 un beidzas ar skaitli, kas apzīmē rakstzīmju skaitu virknē. Kods izmanto VBA funkciju Mid, lai cilpas ietvaros iegūtu vienu rakstzīmi. Ja tiek atrasta ciparu rakstzīme, tiek izpildīts priekšraksts Exit For, un cilpa beidzas priekšlaicīgi.

Ja rakstzīme nav skaitliska, tā tiek pievienota atgrieztajai vērtībai (kas ir tāda pati kā funkcijas nosaukums). Vienīgā reize, kad cilpa pārbaudīs katru rakstzīmi, ir tad, ja argumentā nodotā ​​virkne nesatur ciparu rakstzīmes.

Ligzdotas For-Next piemērs

Ciklā var būt neierobežots skaits priekšrakstu, un cilpas For-Next ievietojiet citās For-Next cilpās.

Nākamajā piemērā tiek izmantota ligzdotā cilpa For-Next, lai ievietotu nejaušus skaitļus 12 rindu pa 5 kolonnu šūnu diapazonā. Ņemiet vērā, ka rutīna izpilda iekšējo cilpu (cilpu ar rindu skaitītāju) vienu reizi katrā ārējās cilpas atkārtojumā (cilpa ar Col skaitītāju). Citiem vārdiem sakot, rutīna izpilda Cells(Row, Col) = Rnd priekšrakstu 60 reizes.

Kā izmantot For-Next cilpas programmā Excel 2016 VBA

Šīs šūnas tika aizpildītas, izmantojot ligzdotu For-Next cilpu.

Sub FillRange()
  Dim Col As Long
  Dim Row As Long
  Kolonnā = 1 līdz 5
    Rindai = 1 līdz 12
      Šūnas (rinda, kolonna) = Rnd
    Nākamā rinda
  Nākamais plkv
Beigu apakš

Nākamajā piemērā tiek izmantotas ligzdotas For-Next cilpas, lai inicializētu trīsdimensiju masīvu ar vērtību 100. Šī rutīna izpilda priekšrakstu visu cilpu vidū (piešķiršanas priekšraksts) 1000 reizes (10 * 10 * 10), katru reizi. ar atšķirīgu i, j un k vērtību kombināciju:

Sub NestedLoops()
  Dim MyArray (10, 10, 10)
  Dim i As Long
  Dim j Tik ilgi
  Dim k Tik ilgi
  Ja i = 1 līdz 10
    Ja j = 1 līdz 10
      Ja k = 1 līdz 10
        MyArray(i, j, k) = 100
    Nākamais k
  Nākamais j
Nākamais i
  Citi paziņojumi ir šeit
Beigu apakš

Šis ir pēdējais piemērs, kurā tiek izmantotas ligzdotas For-Next cilpas ar Step vērtību. Šī procedūra izveido šaha laukumu, mainot mainīgo šūnu fona krāsu.

Kā izmantot For-Next cilpas programmā Excel 2016 VBA

Izmantojot cilpas, lai izveidotu šaha paraugu.

Rindas skaitītājs cilpas no 1 līdz 8. Ja-Tad konstrukcija nosaka, kuru ligzdoto For-Next struktūru izmantot. Nepāra rindām kolonnu skaitītājs sākas ar 2. Pāra skaitļu rindām Col skaitītājs sākas ar 1. Abās cilpās tiek izmantota soļa vērtība 2, tāpēc tiek ietekmētas alternatīvās šūnas. Divi papildu paziņojumi padara šūnas kvadrātveida (tāpat kā īstā šaha galdiņā).

Sub MakeCheckerboard()
  Dim R As Long, C As Long
  Ja R = 1 līdz 8
    Ja WorksheetFunction.IsOdd(R) Tad
     Ja C = 2 līdz 8, 2. darbība
       Šūnas (R, C).Interjers.Krāsa = 255
     Nākamais C
    Citādi
     Ja C = 1 līdz 8, 2. darbība
       Šūnas (R, C).Interjers.Krāsa = 255
     Nākamais C
    Beigas Ja
  Nākamais R
  Rindas (“1:8”). Rindas augstums = 35
  Kolonnas (“A:H”). Kolonnas platums = 6,5
Beigu apakš

Kā neļaut Microsoft Word atvērt failus tikai lasīšanas režīmā operētājsistēmā Windows

Kā neļaut Microsoft Word atvērt failus tikai lasīšanas režīmā operētājsistēmā Windows

Kā neļaut Microsoft Word atvērt failus tikai lasīšanas režīmā operētājsistēmā Windows Microsoft Word atver failus tikai lasīšanas režīmā, padarot tos neiespējamu rediģēt? Neuztraucieties, metodes ir norādītas zemāk

Kā novērst nepareizu Microsoft Word dokumentu drukāšanu

Kā novērst nepareizu Microsoft Word dokumentu drukāšanu

Kā labot kļūdas, drukājot nepareizus Microsoft Word dokumentus.Kļūdas Word dokumentu drukāšanā ar mainītiem fontiem, nekārtīgām rindkopām, trūkstoša teksta vai pazaudētu saturu ir diezgan izplatītas. Tomēr nevajag

Izdzēsiet pildspalvas un marķiera zīmējumus savos PowerPoint slaidos

Izdzēsiet pildspalvas un marķiera zīmējumus savos PowerPoint slaidos

Ja prezentācijas laikā esat izmantojis pildspalvu vai marķieri, lai zīmētu uz PowerPoint slaidiem, varat saglabāt zīmējumus nākamajai prezentācijai vai izdzēst tos, lai nākamajā reizē, kad to parādīsit, jūs sāktu ar tīriem PowerPoint slaidiem. Izpildiet šos norādījumus, lai dzēstu pildspalvas un marķiera zīmējumus: Līniju dzēšana pa vienai […]

Veidojiet bibliotēkas saturu programmā SharePoint 2010

Veidojiet bibliotēkas saturu programmā SharePoint 2010

Stilu bibliotēkā ir CSS faili, paplašināmās stila lapu valodas (XSL) faili un attēli, ko izmanto iepriekš definētas šablona lapas, lapu izkārtojumi un vadīklas programmā SharePoint 2010. Lai atrastu CSS failus publicēšanas vietnes stilu bibliotēkā: izvēlieties Vietnes darbības → Skatīt Viss vietnes saturs. Tiek parādīts vietnes saturs. Stila bibliotēka atrodas […]

Formatējiet skaitļus tūkstošos un miljonos Excel pārskatos

Formatējiet skaitļus tūkstošos un miljonos Excel pārskatos

Nepārsedziet savu auditoriju ar milzīgiem skaitļiem. Programmā Microsoft Excel varat uzlabot informācijas paneļu un pārskatu lasāmību, formatējot skaitļus tā, lai tie tiktu rādīti tūkstošos vai miljonos.

Kā koplietot un sekot līdzi SharePoint vietnēm

Kā koplietot un sekot līdzi SharePoint vietnēm

Uzziniet, kā izmantot SharePoints sociālo tīklu rīkus, kas ļauj indivīdiem un grupām sazināties, sadarboties, koplietot un sazināties.

Kā programmā Excel konvertēt datumus Juliana formātos

Kā programmā Excel konvertēt datumus Juliana formātos

Jūlija datumi ražošanas vidēs bieži tiek izmantoti kā laikspiedols un ātra atsauce partijas numuram. Šāda veida datuma kodēšana ļauj mazumtirgotājiem, patērētājiem un pakalpojumu aģentiem noteikt produkta izgatavošanas laiku un līdz ar to arī produkta vecumu. Jūlija datumi tiek izmantoti arī programmēšanā, militārajā jomā un astronomijā. Savādāk […]

Kā izveidot Access Web App

Kā izveidot Access Web App

Programmā Access 2016 varat izveidot tīmekļa lietotni. Kas tad vispār ir tīmekļa lietotne? Tīmeklis nozīmē, ka tas ir tiešsaistē, un lietotne ir tikai “lietojumprogrammas” saīsinājums. Pielāgota tīmekļa lietotne ir tiešsaistes datu bāzes lietojumprogramma, kurai var piekļūt no mākoņa, izmantojot pārlūkprogrammu. Jūs veidojat un uzturat tīmekļa lietotni darbvirsmas versijā […]

Ātrās palaišanas josla programmā SharePoint 2010

Ātrās palaišanas josla programmā SharePoint 2010

Lielākā daļa SharePoint 2010 lapu ātrās palaišanas joslā lapas kreisajā pusē parāda navigācijas saišu sarakstu. Ātrās palaišanas joslā tiek rādītas saites uz piedāvāto vietņu saturu, piemēram, sarakstiem, bibliotēkām, vietnēm un publicēšanas lapām. Ātrās palaišanas joslā ir divas ļoti svarīgas saites: Visa vietnes satura saite: […]

Ko nozīmē risinātāja kļūdu ziņojumi programmā Excel?

Ko nozīmē risinātāja kļūdu ziņojumi programmā Excel?

Vienkāršām problēmām risinātājs programmā Excel parasti ātri atrod optimālās Risinātāja mainīgā vērtības mērķa funkcijai. Taču dažos gadījumos Solver ir grūti atrast Solver mainīgā vērtības, kas optimizē mērķa funkciju. Šādos gadījumos Solver parasti parāda ziņojumu vai kļūdas ziņojumu, kurā aprakstīta vai apspriesta problēma, ko […]