Szeretné automatizálni az ismétlődő feladatokat az Excel VBA-ban? Ismerje meg, hogyan használhatja a Do-While ciklust egy műveletsor ismételt végrehajtására, amíg egy feltétel nem teljesül.

A ciklusok minden kódolási nyelv szerves részét képezik, és számos ismétlődő feladatot automatizálhat különféle ciklusok használatával, az adott nyelvtől függően. Az Excel VBA nem különbözik a többitől, mivel egy sor hurkolási lehetőséget kínál, amelyek mindegyike más-más célt szolgál.

Ezeket a ciklusokat a kezdő- és végpontok, a feltétel(ek) és a paraméterek meghatározásával használhatja. Az egyik ilyen kiemelkedő hurok a VBA-n belül a do-while ciklus, amelyet az adatautomatizáláshoz használhat. Így használhatja az Excel VBA do-while ciklusát, amely egy mindig elengedhetetlen hurkolási módszer, amely nagymértékben leegyszerűsítheti a kézi feladatokat.

Mi az a Do-While ciklus az Excel VBA-ban?

A do-while ciklus meglehetősen egyszerű; ezt a hurkot használhatja az ajánlattételhez, ha egy kívánt kimenetet szeretne létrehozni egy adott feltétel alapján. A ciklus addig fut, amíg a meghatározott feltétel(ek) igaz nem lesz. Ha a program False értékkel találkozik, a ciklus leáll, és kiírja az eredményeket a kijelölt cellákba.

instagram viewer

A do-while ciklust különböző szakaszokban és különböző feltételekkel használhatja; akár több hurkot is használhat a fő külső hurkon belül, hogy fokozza annak használatát. Kezdőként érdemes a kidolgozottságra hivatkozni VBA programozási oktatóanyagok hogy bővítse tudását és készségeit ezen a területen.

Do-While Loop szintaxisa az Excel VBA-ban

A do-while ciklus egy előre meghatározott struktúrával rendelkezik, amelyet követnie kell, hogy zökkenőmentesen működjön, hiba nélkül. Íme a szintaxis referenciaként:

Teddmíg [feltétel_hivatkozás]

[Kritériumi nyilatkozatok]

Hurok

A ciklus a do-while kulcsszóval kezdődik, amelyet a kezdő és záró hivatkozás követ. A szintaxis első része a teljes ciklust vezérli. Ezután meg kell határoznia azokat az utasításokat, amelyek a ciklus minden lefutásakor végrehajtódnak.

Végül, ha a ciklusfeltétel False értéket kap, a ciklus kulcsszó végrehajtódik, és kilép a ciklusból. Ez egy átfogó szerkezet; finomíthatja különböző műveletek végrehajtásához. Íme néhány példa, amellyel megismerkedhet a do-while ciklus működésével.

Az első Do-While cikluskód megírása

Tegyük fel, hogy a kettő többszörösét szeretné megjeleníteni az A oszlopban. A feltétel az, hogy addig nyomtassa ki a számokat, amíg a számláló el nem éri a 20-at.

Ehhez lépjen a Fejlesztő lapra az Excelben, és nyissa meg a kódszerkesztőt; vagy nyomja meg a gombot Alt + F11 a kódszerkesztő közvetlen megnyitásához. A kódszerkesztő ablakban kattintson a Beszúrás fület, és adjon hozzá egy új modult.

Az összes kódot be kell írnia ebben a modul ablakban. Adja hozzá a következő kódot a modulon belül:

Sub dowhileloop()

Dim a Mint Egész szám

a = 1

TeddMíg a <= 10

Cellák (a, 1) = 2 * a

a = a + 1

Hurok

Vége Alatti

A kódex magyarázata

Íme a kód lebontása, amely segít elsajátítani az alapokat:

  • Alrutin használata: A kód írásának megkezdéséhez az Excel VBA-ban hozzon létre egy külső héjat egy alrutinfüggvénnyel (Sub). Adjon neki értelmes nevet, amely összhangban van a kód céljával. Ebben a példában használhatja a dowhileloop nevet, amelyet () követ.
  • Adattípusok meghatározása: A változó adattípusok deklarálásához a dimenzió (dim) függvényt kell használni. Az adattípus deklarálásával hatékonyabbá teheti kódját és javíthatja a végrehajtási sebességet. Ebben az esetben a változó a egész értékeket tárol, ezért használja az egész adattípust a meghatározásához. Ebben a változóban tárolhatja a kezdő sor számát, hogy deklarálja a do-while ciklus kezdő adatpontját.
  • Feltétel(ek) meghatározása: Most itt az ideje átadni a feltételt a do-while ciklus szabályozásához. Használhatja a csinálni, miközben kulcsszavakat, majd a feltételt. Mivel tízszer szeretné futtatni a ciklust, a feltételt használja a < = 10.
  • Adja át a végrehajtható nyilatkozatokat: Fontos, hogy tudd a különbséget a Cells funkció és a Range függvény a VBA-ban. A cellák függvény a sor- és oszlophivatkozásokat használja a VBA-n belül. Például az első iteráció során, amikor a =1 értéke, a cella képlete (1,1). A VBA memóriájában ez az A1 cellát jelenti. Minden alkalommal, amikor a ciklus végrehajtódik, a definiált változó értéke növekszik, és a hivatkozás a következő elérhető cellára lép.
  • Növelje a változót: Passzolhatsz a = a + 1 utasítást a cellaértékek növeléséhez. Ezzel a ciklus a feltétel következő részére kerül; a ciklus addig fut, amíg a feltétel hamis értéket nem kap.
  • Lépjen ki a hurok feltételből: Ha a feltétel False, a ciklus a Loop kulcsszóval lép ki, végül pedig az End Sub kulcsszóval lép ki az alrutinból.
  • A kód végrehajtása: Mivel a kód készen van, egyszerűen nyomja meg a gombot F5 billentyű vagy a zöld lejátszás gombot a felső menüsorban a kód végrehajtásához.

A végeredmény 2-20-ig terjedő számok listáját mutatja az A oszlopban.

Előre kitöltött oszlop használata hurokfeltételként

Most, hogy megértette az alapstruktúra felépítésének szintaxisát és árnyalatait, miért ne írhatna másik kódot a hasonló számok kinyomtatására a már meglévő kritériumok alapján? Létrehozhat például egy hurokfeltételt, amely kiválasztja a jelét az A oszlopból, és a kimenetet a B oszlopba nyomtatja.

Az A oszlopban lévő összes kitöltött cella alapján a B oszlopban kettő többszörösét nyomtathatja ki. A hurok az A oszlop előre feltöltött cellák teljes számának alapján fut. Mivel a kezdősor értéke egy (a =1), a végérték dinamikus, és a do-while ciklus automatikusan kiszámítja.

A sorértéket használva a kód végigfut az A oszlop minden celláján, és megszorozza a számot 2-vel. A kimenet a B oszlopban látható.

Ha tíznél több érték van az A oszlopban, a ciklus addig fut, amíg az első oszlopban üres értékkel nem találkozik. Hasonlóképpen, még bonyolultabb feltételeket írhat a do-whil ​​cikluson belül, és használhatja a feltételek ellenőrzésére és a kimenet szükség szerinti megjelenítésére.

IF utasítás használata Do-While hurkon belül

A beágyazott ciklusokhoz hasonlóan a Do-While cikluson belül is használhatja az IF utasítást egy újabb feltételréteg hozzáadásához. Ebben az esetben a do-while ciklus a teljes ciklust addig futja, amíg a feltétel False nem lesz, és a belső IF ​​utasítás minden alkalommal végrehajtódik, amikor a ciklus fut.

Az alábbi példában a do-while ciklus az A oszlop minden celláján végighalad, amíg egy üres cellával nem találkozik. Ezt követően az IF utasítás ellenőrzi az A oszlop minden cellájának értékét, és kiírja a kimenetet a B oszlopba. Amint a külső ciklus találkozik egy üres cellával az A oszlopban, a ciklus megáll és kilép az alrutinból.

A kimenet a következő:

Amíg az A oszlopban lévő érték nem éri el az ötöt, a B oszlopban kapott érték öt lesz. Az A6-ban, mivel a cella értéke nagyobb, mint öt, a kapott kimenet hét, ami szinkronban van az IF feltétellel.

A VBA sokoldalú funkcióinak feltárása

Az Excel és a VBA nagyon kedvező kombinációt alkot a fejlett adatelemzés végrehajtásához. VBA nélkül is használhatja az Excel különféle logikai függvényeit bonyolult feladatok elvégzésére, ami jól példázza programozási készségeit.

Ha érdekli az adatelemzés, és rendszeres tevékenységei során használja az Excelt, óriási hasznot húzhat az Excel sokoldalú logikai funkcióiból.