Excel VBA szett
A „Set” egy olyan kulcsszó, amelyet a VBA programozásában használnak egy objektum vagy cellatartomány hivatkozásának hozzárendelésére, amely az egész programban vagy kódban rögzített marad az Excelben. A VBA Set alapvetően segít elkerülni annak a tartománynak az ismétlődő bevitelét, amelyet ki kell választanunk a kód végrehajtása közben. Kiválóan a „Set” -et leginkább egy munkalap munkalapjaira / cellatartományára alkalmazzák.
Szintaxis:
Objektumnév / változó beállítása = Objektum / tartomány
Megjegyzés: Szüksége van Fejlesztő fülre az Excel munkalapon.Ha nem látja Excelben a „Fejlesztő” fület, olvassa el az alábbi lépéseket:
1. lépés: Kattintson a Fájlbeállítás elemre.
2. lépés: Megjelenik a legördülő menü, kattintson az Opciók fülre.
3. lépés: Miután rákattint az „Opciók” elemre, megjelenik egy párbeszédpanel az alább látható módon, majd kattintson a Szalag testreszabása lehetőségre.
4. lépés: Amikor elhúzzuk a testreszabható szalagbeállításokat, találunk egy lehetőséget a Fejlesztő számára, ellenőriznünk kell ezt a négyzetet, amely lehetővé teszi számunkra, hogy a VBA-t Excelben használjuk.
Hogyan lehet használni egy meghatározott kulcsszót a VBA-ban?
Az alábbiakban bemutatjuk a különféle példákat a beállított kulcsszó használatához az Excel VBA-ban.
Itt letöltheti ezt a VBA Set Excel sablont - VBA Set Excel TemplateExcel VBA készlet - 1. példa
Vegyünk egy egyszerű példát a Set kulcsszóra az Excel VBA-ban. Tegyük fel, hogy szeretnénk kiválasztani egy tartományt, és beállítani azt fix tartományba, hogy elkerüljük az ismétlést. Az alábbiakban található a következő neveket tartalmazó cellatartomány:
Kövesse az alábbi lépéseket a beállított kulcsszó használatához az Excel VBA-ban:
1. lépés: Kattintson a „Fejlesztő” fülre, majd kattintson a bal oldali „Visual Basic” opcióra (első lehetőség), az alább látható módon.
Ha rákattint, megjelenik egy új ablak, ahogy az alább látható:
Észre fogja venni, hogy a bal oldalon két fül található, a „Sheet1 (Sheet1)” és a „ThisWorkbook”. Az egyetlen különbség a „Sheet1”, ha csak erre a lapra akar végrehajtani kódot, és a „ThisWorkbook” -ban kódot írhatunk és végrehajthatunk, amely alkalmazható az egész excel munkafüzetre.
2. lépés: Kattintson duplán a „1. lap (1. lap) elemre, és egy üres képernyő jelenik meg, ahova be kell írnunk a kódot. Először deklaráljon egy részhalmazt Alnévként, majd nyomja meg az Enter billentyűt, és látni fogja az alábbiak szerint létrehozott részhalmazt:
Kód:
Sub setexmp () Vége Sub
Így készítünk egy részhalmazt, és automatikusan megjelenik az „End Sub” felirat. Ez alapértelmezés szerint az excel. Ha az „End Sub” felirat nem jelenik meg, akkor a kód nem fog végrehajtódni, és hibát okoz.
3. lépés: Most deklaráljuk a kódban használandó változókat.
Type Dim változó neve és változó típusa. Ebben az esetben a név olyan lesz, mint a tartomány azonosítója, és típusa egész szám, hosszú, karakterlánc, tartomány stb.
Kód:
Sub setexmp () Dim Rnst As Range End Sub
Itt az „Rnst” egy változó név, és rendelje hozzá (As) Range funkcióként. Ez figyelmezteti a rendszert, hogy a tartomány kiválasztása megtörténik.
4. lépés: Ezután írja be a „Set” kulcsszót, és adjon meg egy tartományt a következő formátummal: Set változó = Range („cell range”) .
Kód:
Subtetempmp () Dim Rnst As Range Set Rnst = Range ("A2: A11") End Sub
5. lépés: Ki kell választanunk ezt a megadott sortartományt. Így írja be a következőt: Rnst.Válassza az alábbi képernyőképeket:
Kód:
Subtetempmp () Dim Rnst As Range Set Rnst = Range ("A2: A11") Rnst.Select End Sub
6. lépés: Futtassa a kódot az F5 vagy a Futtatás gomb megnyomásával, és nézze meg a kimenetet.
Kiválasztja a megadott tartományt, amely az A2 – A11 cellák között van.
Excel VBA készlet - 2. példa
Tegyük fel, hogy ezeket a cellákat be akarjuk illeszteni, vagy egy másik cellába szeretnénk beilleszteni. A fenti kódot fogjuk használni, és hozzáadunk kódot az adatok több oszlopba való beillesztéséhez.
Kövesse az alábbi lépéseket:
1. lépés: Most lemásoljuk a cellatartományt, amely a név oszlop. Gépelje be a másolatot, azaz az „Rnst.Copy”, ha az „Rnst.” Gépet írja be, egyfajta legördülő menü jelenik meg. Különféle funkciókat tartalmaz, például másolást, beillesztést stb.
2. lépés: Görgessen lefelé és válassza ki a végrehajtani kívánt funkciót. Csak írja be a „Másolás” menüpontot az alábbi képernyőképen látható módon:
Kód:
Subtetempmp () Dim Rnst As Range Set Rnst = Range ("A2: A11") Rnst.Select Rnst.Copy End Sub
3. lépés: Fordítsa le a kódot az F8 billentyű megnyomásával.
Miután végrehajtotta ezt a másolási funkciót, látni fogja, hogy excel-ben a tartományt lemásolják, és pontozott vonalak jelennek meg a cellatartomány körül, az alább látható módon:
4. lépés: Most be kell illesztenünk ezeket a cellákat, mondjuk a szomszédos oszlopokba egyenként, tehát egy „For” hurok funkciót kell használnunk, és tegyük fel, hogy ötször be kell illesztenünk, így az alábbiak szerint írjuk be:
Integer i = 1-5 esetén -> ez határozza meg, hogy hányszor kell beilleszteni az adatokat. Ha 5, akkor 1-5 másként, a kívánt szám szerint.
Kód:
Subtetempmp () Dim Rnst As Range Set Rnst = Range ("A2: A11") Rnst.Select Rnst.Copy for i = 1-5 End Sub
5. lépés: Válassza ki azt a cellát, amelybe be szeretné illeszteni ezt a cellás tartományt. Tegyük fel, hogy a B2 oszlopból szeretnénk elkezdeni a beillesztést, majd az adatok beillesztésének dinamikusnak kell lennie, azaz automatikusan automatikusan kiválasztja a szomszédos oszlopokat egyenként, átfedés nélkül. Ezért a szintaxis „Cell (sor száma, oszlop száma) .PasteSpecial” lenne.
Cella (2, i + 1) .PasteSpecial, itt a 2-> a sor számát jelzi, és i + 1 -> az oszlop számát. Az i + 1 azt jelenti, hogy a „For” hurokban deklarált I első értéke i = 1, tehát az oszlop értéke 2 lesz, meghatározza, hogy a B oszlopból való beillesztést indítja el. És amint i értéke növekszik, továbbra is a szomszédos oszlopokat választja ki. egyenként.
Kód:
Subtetempmp () Dim Rnst As Range Set Rnst = Range ("A2: A11") Rnst.Select Rnst.Copy for i = 1-5 cell (2, i + 1) .PasteSpecial xlValues End Sub
6. lépés: Írja be a „ Next i ” -t, ami azt jelenti, hogy egyenként növeli az „i” értékét, hogy az oszlop beillesztése dinamikus maradjon.
Kód:
Subtetempmp () Dim Rnst As Range Set Rnst = Range ("A2: A11") Rnst.Válassza az Rnst.Copy lehetőséget i = 1–5 cellára (2, i + 1) .PasteSpecial xlValues Next i End Sub
7. lépés: Nyomja meg az „F8” gombot, hogy soronként megjelenjen a kód végrehajtó kódja, és egyenként megmutatja a cella beillesztését a szomszédos oszlopokba.
Itt láthatja, hogy i értéke 1, és az adatokat beillesztettük a B oszlopba, ha szükséges.
8. lépés: Most, amikor ismét megnyomja az „F8”, látni fogja, hogy most i értéke 2. Ennélfogva a 2 + 1 3 lesz, és az adatok bekerülnek a (2, 3) cellába, azaz a sor értéke azonos, de az oszlop számváltozás az alábbi képernyőképen látható módon:
A hurok ismétlése után az adatok ötször vannak beillesztve, azaz az 1-től 5-ig terjedő adatok beillesztése a B oszloptól az F oszlopig kezdődik, az alább látható módon:
Excel VBA készlet - 3. példa
Tegyük fel, hogy egy üzenet mezőben egy gombnyomásra megjelenő üzenet mezőben meg szeretnénk mutatni az ebben a tartományban lévő cellák számát. Ugyanazokat az adatokat vesszük, mint az alábbiakban bemutatjuk.
Ezenkívül a példa kódját az új lapon futtatjuk. Ezért adjon hozzá egy új lapot, és a VBA ablakban az alábbiak szerint jelenik meg:
Be kell illesztenünk a parancsgombot. Ez az excel tulajdonsága, ezért kövesse az alábbi lépéseket:
1. lépés: Adjon meg egy „Setcount ()” részhalmaz nevét az alábbi képernyőképen látható módon:
Kód:
Alsó szám () Befejezés al
2. lépés: Nyilatkoztassa ugyanazt az „Rnct” változót, mint egy tartományt az alkészletben, amint az az alábbi képernyőképen látható:
Kód:
Alsó szám () Dim Rnct as Range End Sub
3. lépés: Ezután írja be a „Set” kulcsszót, és adja meg a tartományt.
Kód:
Alsó szám () Eltávolítás Rnct mint tartomány Beállítás Rnct = Tartomány ("A2: A11") Vége Sub
4. lépés: A tartomány meghatározása után meg kell jelennie a felbukkanó vagy a párbeszédpanelnek, amely megmutatja a tartomány celláinak számát. Ezért használja az „MsgBox” funkciót, amelynek végrehajtásakor a szám megjelenik a párbeszédpanelen. Gépelje be az „MsgBox változó name.count” kifejezést. A változó név beírása után pont (.) Ponttal megjelenik egy különféle funkciókat tartalmazó legördülő menü, és a „count” lehetőséget választjuk, vagy a „count” manuális beírását.
Írja be az „MsgBox Rnct.count” parancsot, és végrehajtáskor számlálóként jelenik meg.
5. lépés: Most be akarjuk helyezni a parancsgombot, és kattintással arra a gombra kell megjelennie az üzenet mezőnek.
Kattintson az „Insert” elemre a „Fejlesztő” lapon, ahogyan a piros négyzet kiemelte, és megjelenik a „Formavezérlők” kategória legördülő menüje. Kattintson a legelső téglalap alakú dobozszerű alakra, amelyet kézzel kell rajzolnunk és beillesztnünk az Excel lapba:
6. lépés: Ha rákattint a téglalap dobozra, rajzolja és illessze be a dobozt a lapba, és miután elkezdett rajzolni, megjelenik egy párbeszédpanel, amint az alább látható. Ez egy „Makro hozzárendelése” ablak gomb, és válassza ki a „Setcount” alkészlet makrót. Kattintson az „OK” gombra.
Ez azt jelenti, hogy a gombhoz makrókat rendeltünk. És kattintással végrehajtja.
7. lépés: Az alább látható módon jelenik meg az Excelben.
8. lépés: Kattintson a jobb gombbal rá, és nevezze át a „ Szöveg szerkesztése ” opcióval az alább látható módon:
9. lépés: Adj neki egy “COUNT” nevet, és az alább látható módon Excelben fogja látni számolni.
10. lépés: Ezután kattintson a “COUNT” gombra: Miután rákattint a “COUNT” gombra, megjelenik az alábbi üzenet mező:
Mint láthatjuk, 10 név létezik, és az A2-től A11-ig terjedő helyes számot mutattak.
Dolgok, amikre emlékezni kell
- Győződjön meg arról, hogy be van illesztve a „Fejlesztő” fül az Excel szalagokba a VBA kódok futtatásához.
- A „Set” -et általában egy munkalap munkalapjaira / cellákra alkalmazzák.
Ajánlott cikkek
Ez egy útmutató a VBA-készlethez. Itt tárgyaljuk, hogyan lehet referenciát rendelni egy objektumra vagy cellatartományra az Excel VBA Set Kulcsszó segítségével, a gyakorlati példákkal és a letölthető Excel sablonnal együtt. Az alábbiakban találunk néhány hasznos excel cikket a VBA-val kapcsolatban -
- VBA összekapcsolt funkció
- Oktatóprogramok az Excel ikonkészleteknél
- Együttműködés a VBA cellákkal
- Oldja meg az egyenletet Excelben