Vai vēlaties automatizēt atkārtotus uzdevumus programmā Excel VBA? Uzziniet, kā izmantot cilpu Do-While, lai atkārtoti izpildītu darbību kopu, līdz tiek izpildīts kāds nosacījums.

Cilpas ir jebkuras kodēšanas valodas neatņemama sastāvdaļa, un jūs varat automatizēt daudzus atkārtotus uzdevumus, izmantojot dažādas cilpas atkarībā no pieejamās valodas. Excel VBA neatšķiras no citām, jo ​​tā piedāvā virkni cilpas opciju, no kurām katra kalpo citam mērķim.

Varat izmantot šīs cilpas, definējot sākuma un beigu punktus, nosacījumu(s) un parametrus. Viena no šādām pamanāmām cilpām VBA ir do-while cilpa, ko varat izmantot, lai strādātu ar datu automatizāciju. Tālāk ir norādīts, kā izmantot programmas Excel VBA do-while cilpu — vienmēr būtisku cilpas metodi, kas var lielā mērā vienkāršot manuālos uzdevumus.

Kas ir cilpa Do-While programmā Excel VBA?

Do-while cilpa ir diezgan vienkārša; varat izmantot šo cilpu, lai veiktu solīšanu, ja vēlaties ģenerēt vēlamo rezultātu, pamatojoties uz konkrētu nosacījumu. Cilpa tiek izpildīta, līdz noteiktais nosacījums (-i) ir True. Kad programma sastopas ar False vērtību, cilpa tiek pārtraukta un rezultāti tiek izdrukāti norādītajās šūnās.

Jūs varat izmantot do-while cilpu dažādos posmos un ar dažādiem kritērijiem; jūs pat varat izmantot vairākas cilpas galvenās ārējās cilpas iekšpusē, lai uzlabotu tās izmantošanu. Kā iesācējs, jums vajadzētu atsaukties uz izstrādāt VBA programmēšanas pamācības lai papildinātu savas zināšanas un prasmes šajā jomā.

Do-While Loop sintakse programmā Excel VBA

Cilpai do-while ir iepriekš noteikta struktūra, kas jums jāievēro, lai nodrošinātu tās nevainojamu darbību, neradot kļūdas. Šeit ir sintakse atsaucei:

Darietkamēr [nosacījuma_atsauce]

[Kritēriju paziņojumi]

Cilpa

Cilpa sākas ar atslēgvārdu do-while, kam seko sākuma un beigu atsauces. Sintakses pirmā daļa kontrolē visu cilpu. Tālāk jums ir jādefinē priekšraksti, kas tiks izpildīti katru reizi, kad cilpa tiek izpildīta.

Visbeidzot, tiklīdz cilpas nosacījumam ir nepatiesa vērtība, cilpas atslēgvārds tiek izpildīts un iziet no cilpas. Šī ir vispārēja struktūra; varat to uzlabot, lai veiktu dažādas darbības. Šeit ir daži piemēri, lai iepazītos ar cilpas do-while darbību.

Pirmā Do-While cikla koda rakstīšana

Pieņemsim, ka kolonnā A vēlaties parādīt divu reizinājumus. Nosacījums ir drukāt skaitļus, līdz skaitītājs sasniedz 20.

Lai to izdarītu, programmā Excel atveriet cilni Izstrādātājs un atveriet kodēšanas redaktoru; vai arī nospiediet Alt + F11 lai tieši atvērtu kodēšanas redaktoru. Kodu redaktora logā noklikšķiniet uz Ievietot cilni un pievienojiet jaunu moduli.

Šajā moduļa logā ir jāieraksta viss kods. Pievienojiet modulim šādu kodu:

Sub dowhileloop()

Dim a Vesels skaitlis

a = 1

DarietKamēr a <= 10

Šūnas (a, 1) = 2 * a

a = a + 1

Cilpa

Beigas Apakš

Kodekss izskaidrots

Tālāk ir sniegts koda sadalījums, lai palīdzētu jums apgūt pamatus.

  • Izmantojiet apakšprogrammu: Lai sāktu rakstīt kodu programmā Excel VBA, izveidojiet ārējo apvalku ar apakšprogrammas funkciju (Sub). Piešķiriet tai jēgpilnu nosaukumu, kas sasaucas ar koda mērķi. Šajā piemērā varat izmantot nosaukumu dowhileloop, kam seko ().
  • Definējiet datu tipus: Dimensijas (dim) funkcija ir jāizmanto, lai deklarētu mainīgo datu tipus. Deklarējot datu tipu, jūs varat padarīt savu kodu efektīvu un uzlabot izpildes ātrumu. Šajā gadījumā mainīgais a saglabā veselu skaitļu vērtības, tāpēc izmantojiet veselu skaitļu datu tipu, lai to definētu. Varat saglabāt sākuma rindas numuru šajā mainīgajā, lai deklarētu do-while cilpas sākuma datu punktu.
  • Definēt nosacījumu(s): Tagad ir pienācis laiks izpildīt nosacījumu, lai kontrolētu cilpu “darīt, kamēr”. Jūs varat izmantot darīt kamēr atslēgvārdi, kam seko nosacījums. Tā kā cilpu vēlaties palaist desmit reizes, jūs izmantojat nosacījumu a < = 10.
  • Nododiet izpildāmos paziņojumus: Ir svarīgi, lai jūs zinātu atšķirību starp Šūnu funkcija un diapazona funkcija VBA. Šūnu funkcija izmanto VBA rindu un kolonnu atsauces. Piemēram, pirmās iterācijas laikā, kad vērtība a =1, šūnas formula ir (1,1). VBA atmiņā tas nozīmē šūnu A1. Katru reizi, kad cilpa tiek izpildīta, definētā mainīgā vērtība palielinās, un atsauce tiek pārvietota uz nākamo pieejamo šūnu.
  • Palieliniet savu mainīgo: Jūs varat nodot a = a + 1 paziņojumu, lai palielinātu šūnu vērtības. Tādējādi cilpa tiek pārvietota uz nākamo nosacījuma daļu; cilpa turpina darboties, līdz nosacījumam tiek piešķirta nepatiesa vērtība.
  • Izejiet no cilpas stāvokļa: ja nosacījums ir False, cilpa iziet ar atslēgvārdu Cikla un, visbeidzot, tā iziet no apakšprogrammas ar atslēgvārdu End Sub.
  • Koda izpilde: Tā kā kods ir gatavs, vienkārši nospiediet F5 taustiņš vai zaļo atskaņošanas pogu augšējā izvēlņu joslā, lai izpildītu kodu.

Gala rezultāts parāda skaitļu sarakstu no 2 līdz 20 kolonnā A.

Iepriekš aizpildītas kolonnas izmantošana kā cilpas nosacījums

Tagad, kad esat sapratis pamatstruktūras konstruēšanas sintaksi un nianses, kāpēc gan neuzrakstīt citu kodu, lai drukātu līdzīgus skaitļus, pamatojoties uz jau esošiem kritērijiem? Piemēram, varat izveidot cilpas nosacījumu, kas atlasa norādi no A kolonnas un izdrukā izvadi kolonnā B.

Pamatojoties uz kopējo aizpildīto šūnu skaitu A slejā, varat drukāt divu reizinājumus B kolonnā. Cilpa izpilda pamata kolonnas A kopējo iepriekš aizpildīto šūnu skaitu. Tā kā sākuma rindas vērtība ir viens (a =1), beigu vērtība ir dinamiska un tiek automātiski aprēķināta, izmantojot cilpu do-while.

Izmantojot rindas vērtību, kods cilā cauri katrai A kolonnas šūnai un reizina skaitli ar 2. Izvade ir parādīta B ailē.

Ja kolonnā A ir vairāk nekā desmit vērtības, cilpa darbosies, līdz pirmajā kolonnā tiks parādīta tukša vērtība. Līdzīgi varat ierakstīt vēl sarežģītākus nosacījumus do-while cilpā un izmantot to, lai pārbaudītu apstākļus un pēc vajadzības parādītu izvadi.

IF paziņojuma izmantošana Do-While ciklā

Tāpat kā ligzdotas cilpas, varat izmantot IF priekšrakstu cilpā Do-While, lai pievienotu vēl vienu nosacījumu slāni. Šādā gadījumā cilpa do-while izpilda visu cilpu, līdz nosacījums ir False, un iekšējais IF priekšraksts tiek izpildīts katru reizi, kad tiek izpildīta cilpa.

Tālāk esošajā piemērā do-while cilpa cikliski iet cauri katrai A kolonnas šūnai, līdz tā saskaras ar tukšu šūnu. Pēc tam IF priekšraksts pārbauda katras šūnas vērtību kolonnā A un izdrukā B kolonnas izvadi. Tiklīdz ārējā cilpa A slejā sastopas ar tukšu šūnu, cilpa apstājas un iziet no apakšprogrammas.

Izvade ir šāda:

Kamēr vērtība A slejā ir mazāka par pieci, iegūtā vērtība kolonnā B ir pieci. Tā kā A6 šūnas vērtība ir lielāka par pieci, iegūtā izvade ir septiņi, kas ir sinhronizēta ar nosacījumu IF.

Atklājiet VBA daudzpusīgās funkcijas

Excel un VBA veido ļoti labvēlīgu kombināciju uzlabotas datu analīzes veikšanai. Pat bez VBA varat izmantot dažādas Excel loģiskās funkcijas, lai veiktu sarežģītus uzdevumus, kas parāda savas programmēšanas prasmes.

Ja jūs interesē datu analīze un izmantojat programmu Excel savās parastajās darbībās, varat gūt milzīgu labumu no Excel daudzpusīgo loģisko funkciju izmantošanas.