Az Excel VBA alegységeinek és függvényeinek elnevezése

Az emberekhez, a háziállatokhoz és a hurrikánokhoz hasonlóan minden Excel VBA Sub and Function eljárásnak nevet kell adni. Bár teljesen elfogadható, hogy kutyáját Hairball Harrisnak nevezze el, általában nem jó ötlet ilyen szabadonfutó hozzáállást alkalmazni az Excl VBA eljárások elnevezésekor. Az Excel VBA eljárások elnevezésekor be kell tartania néhány szabályt:

  • Használhat betűket, számokat és néhány írásjelet, de az első karakternek betűnek kell lennie.
  • A névben nem használhat szóközt vagy pontot.
  • A VBA nem tesz különbséget a kis- és nagybetűk között.
  • Az eljárás nevében nem használhatja a következő karaktereket: #, $, %, &, @, ^, * vagy !. Más szóval, az eljárás neve nem hasonlíthat képregényes káromkodásra.
  • Ha egy függvényeljárást ír le egy képletben való használatra, kerülje a cellacímnek látszó nevet (például A1 vagy B52). Valójában az Excel engedélyezi az ilyen függvényneveket, de miért kell a dolgokat még zavaróbbá tenni, mint amilyenek már vannak?
  • Az eljárások neve nem lehet hosszabb 255 karakternél. (Természetesen soha nem adna ilyen hosszú eljárás nevet.)

Ideális esetben az eljárás neve leírja a rutin célját. Jó gyakorlat az, ha nevet hoz létre egy ige és egy főnév kombinálásával – például ProcessData, PrintReport, Sort_Array vagy CheckFilename.

Egyes programozók inkább mondatszerű neveket használnak, amelyek teljes leírást adnak az eljárásról. Néhány példa a WriteReportToTextFile és a Get_Print_Options_and_Print_Report. Az ilyen hosszú nevek használatának előnyei és hátrányai is vannak. Egyrészt az ilyen nevek leíró jellegűek és általában egyértelműek. Másrészt tovább tart a gépelésük. Mindenki kialakít egy elnevezési stílust, de ha a makró nem csak egy gyors és piszkos ideiglenes makró, akkor érdemes leíró jellegűnek lennie, és kerülni kell az olyan értelmetlen neveket, mint a DoIt, Update, Fix és az egyre népszerűbb Macro1.

Excel VBA Sub eljárások végrehajtása

Bár lehet, hogy jelenleg nem sokat tud az aleljárások fejlesztéséről, fontos tudni, hogyan kell ezeket az eljárásokat végrehajtani. Egy Sub eljárás semmit sem ér, hacsak nem tudja, hogyan kell végrehajtani.

Egyébként egy Sub eljárás végrehajtása ugyanazt jelenti, mint egy Sub eljárás futtatása vagy meghívása . Bármilyen terminológiát használhat.

A VBA Sub-t többféleképpen is végrehajthatja; ez az egyik oka annak, hogy olyan sok hasznos dolgot tehetsz a Sub eljárásokkal. Íme egy kimerítő lista az aleljárások végrehajtásának módjairól:

  • Válassza a Futtatás → Al-/Felhasználói űrlap futtatása lehetőséget (a VBE-ben). Az Excel végrehajtja az aleljárást, amelyben a kurzor található. Ennek a menüparancsnak két alternatívája van: az F5 billentyű és a Run Sub/UserForm gomb a VBE Standard eszköztárán. Ezek a módszerek nem működnek, ha az eljárás egy vagy több argumentumot igényel.
  • Használja az Excel Makró párbeszédpanelét. Ezt a mezőt a Fejlesztő → Kód → Makrók menüpontban vagy a Nézet → Makrók → Makrók menüpontban nyithatja meg. Vagy hagyja ki a szalagot, és nyomja meg az Alt+F8 billentyűt. Amikor megjelenik a Makró párbeszédpanel, válassza ki a kívánt aleljárást, és kattintson a Futtatás gombra. Ez a párbeszédpanel csak azokat az eljárásokat sorolja fel, amelyekhez nincs szükség argumentumra.
  • Nyomja meg a Ctrl+billentyűt (vagy a Ctrl+Shift+billentyűt) az aleljáráshoz (feltételezve, hogy Ön hozzárendelt egyet).
  • Kattintson egy gombra vagy egy alakzatra a munkalapon. A gombhoz vagy alakzathoz hozzá kell rendelni egy aleljárást – ami nagyon egyszerű.
  • Egy másik aleljárásból, amit írsz.
  • Kattintson egy gombra, amelyet hozzáadott a Gyorselérési eszköztárhoz.
  • A szalaghoz hozzáadott egyéni elemből.
  • Amikor egy esemény bekövetkezik. Ilyen események közé tartozik a munkafüzet megnyitása, a munkafüzet bezárása, a munkafüzet mentése, a cella módosítása, a lap aktiválása és egyéb dolgok.
  • A VBE azonnali ablakából. Csak írja be az aleljárás nevét, és nyomja meg az Enter billentyűt.

Néhány ilyen technikát az alábbiakban tárgyalunk. A követéshez meg kell adnia egy aleljárást egy VBA modulban:

Kezdje egy új munkafüzettel.

Nyomja meg az Alt+F11 billentyűket a VBE aktiválásához.

Válassza ki a munkafüzetet a Projekt ablakban.

Új modul beillesztéséhez válassza a Beszúrás → Modul menüpontot.

Írja be a következőt a modulba:

Sub ShowCubeRoot()
  Num = InputBox("Adjon meg egy pozitív számot")
  MsgBox Num ^ (1/3) & " a kocka gyökér."
Vége Sub

Ez az eljárás számot kér a felhasználótól, majd megjeleníti a szám kockagyökérét egy üzenetmezőben. Ezek a képek azt mutatják, hogy mi történik, amikor végrehajtja ezt az eljárást.

Az Excel VBA alegységeinek és függvényeinek elnevezése

A beépített VBA InputBox funkció használata számok lekéréséhez.

Azt is megtudhatja, mi történik az MsgBox funkción keresztül.

Az Excel VBA alegységeinek és függvényeinek elnevezése

Egy szám kockagyökének megjelenítése az MsgBox függvényen keresztül.

Egyébként a ShowCubeRoot nem egy makró példa . Nem ellenőrzi a hibákat, így könnyen meghibásodik. Kattintson a Mégse gombra a beviteli mezőben, vagy írjon be egy negatív számot. Bármelyik művelet hibaüzenetet eredményez.

Az Excel VBA Sub eljárásának közvetlen végrehajtása

Az eljárás végrehajtásának egyik módja az, ha közvetlenül abból a VBA-modulból hajtja végre, amelyben meghatározta. Kovesd ezeket a lepeseket:

Aktiválja a VBE-t, és válassza ki az eljárást tartalmazó VBA-modult.

Vigye a kurzort bárhová az eljárás kódjában.

Nyomja meg az F5 billentyűt (vagy válassza a Futtatás → Al-/Felhasználói űrlap futtatása menüpontot).

Válaszoljon a beviteli mezőre, majd kattintson az OK gombra.

Az eljárás megjeleníti a beírt szám kockagyökét.

A Futtatás → Sub/UserForm futtatása nem használható argumentumokat használó aleljárások végrehajtására, mert nincs mód az argumentumok átadására az eljárásnak. Ha az eljárás egy vagy több argumentumot tartalmaz, akkor az egyetlen módja annak, hogy meghívjuk egy másik eljárásból – amelynek meg kell adnia az argumentum(oka)t.

Az eljárás végrehajtása az Excel Makró párbeszédpaneléből

A legtöbb esetben az aleljárásokat Excelből hajtja végre, nem a VBE-ből. Az alábbi lépések leírják, hogyan lehet makrókat végrehajtani az Excel Makró párbeszédpaneljének használatával:

Ha a VBE-ben dolgozik, aktiválja az Excelt.
Az Alt+F11 lenyomása az expressz útvonal.

Válassza a Fejlesztő → Kód → Makrók menüpontot (vagy nyomja meg az Alt+F8 billentyűt).
Az Excel megjeleníti az itt látható párbeszédpanelt.Az Excel VBA alegységeinek és függvényeinek elnevezése

A Makró párbeszédpanel felsorolja az összes elérhető aleljárást.

Válassza ki a makrót.

Kattintson a Futtatás gombra (vagy kattintson duplán a makró nevére a listamezőben).

A Makró párbeszédpanel nem jeleníti meg az argumentumokat használó aleljárásokat. Ez azért van, mert nincs mód az érvek megadására.

Excel VBA makró végrehajtása gyorsbillentyű használatával

A makró végrehajtásának másik módja a gyorsbillentyű megnyomása. Mielőtt azonban ezt a módszert használhatná, hozzá kell rendelnie egy gyorsbillentyűt a makróhoz.

A makró rögzítésének megkezdésekor lehetősége van gyorsbillentyűk hozzárendelésére a Makró rögzítése párbeszédpanelen . Ha az eljárást a makrórögzítő használata nélkül hozza létre, a következő lépésekkel rendelhet hozzá egy gyorsbillentyűt (vagy módosíthat egy meglévő gyorsbillentyűt):

Válassza a Fejlesztő → Kód → Makrók lehetőséget.

Válassza ki az aleljárás nevét a listából.

Ebben a példában az eljárás neve ShowCubeRoot.

Kattintson a Beállítások gombra.
Az Excel megjeleníti az itt látható Makróbeállítások párbeszédpanelt.Az Excel VBA alegységeinek és függvényeinek elnevezése

A Makróbeállítások párbeszédpanelen megadhatja a makrók beállításait.

Kattintson a Gyorsbillentyű opcióra, és írjon be egy betűt a Ctrl feliratú mezőbe.

A beírt betű a makró végrehajtásához használni kívánt billentyűkombinációnak felel meg . Például, ha beírja a kis c betűt , a makrót a Ctrl+C billentyűkombináció lenyomásával hajthatja végre. Ha nagybetűt ír be, hozzá kell adnia a Shift billentyűt a billentyűkombinációhoz. Például, ha C betűt ír be, a makrót a Ctrl+Shift+C billentyűkombináció lenyomásával hajthatja végre.

Kattintson az OK gombra a Makróbeállítások párbeszédpanel bezárásához, majd kattintson a Mégse gombra a Makró párbeszédpanel bezárásához.
Miután hozzárendelt egy gyorsbillentyűt, lenyomhatja azt a billentyűkombinációt a makró végrehajtásához. A billentyűparancs nem működik, ha argumentumot használó makróhoz van hozzárendelve.

A makrókhoz rendelt gyorsbillentyűk felülírják az Excel beépített billentyűparancsait. Például a Ctrl+C a szabványos gyorsbillentyű az adatok másolásához. Ha a Ctrl+C billentyűkombinációt hozzárendeli egy makróhoz, akkor nem használhatja a Ctrl+C billentyűkombinációt a másoláshoz. Ez általában nem nagy baj, mert az Excel szinte mindig más módokat kínál a parancsok végrehajtására.

Az Excel VBA eljárás végrehajtása gombról vagy alakzatról

Néha tetszhet az ötlet, hogy a makrót hozzárendelje egy gombhoz (vagy bármely más alakzathoz) a munkalapon. Az Excel makró gombhoz való hozzárendeléséhez kövesse az alábbi lépéseket:

Aktiváljon egy munkalapot.

Adjon hozzá egy gombot az Űrlapvezérlők csoportból.
Az Űrlapvezérlők csoport megjelenítéséhez válassza a Fejlesztő → Vezérlők → Beszúrás menüpontot.Az Excel VBA alegységeinek és függvényeinek elnevezése

A szalag, amely a Fejlesztő lap Beszúrás gombjára kattintva elérhető vezérlőket mutatja.

Kattintson a Gomb eszközre az Űrlapvezérlők csoportban.

Ez az első gomb a vezérlők első sorában.

Húzza be a munkalapot a gomb létrehozásához.
Miután hozzáadta a gombot a munkalaphoz, az Excel olvas a gondolataiban, és megjeleníti az alábbiakban látható Makró hozzárendelése párbeszédpanelt.Az Excel VBA alegységeinek és függvényeinek elnevezése

Amikor hozzáad egy gombot egy munkalaphoz, az Excel automatikusan megjeleníti a Makró hozzárendelése párbeszédpanelt.

Válassza ki a gombhoz rendelni kívánt makrót.

Kattintson az OK gombra.

Miután elvégezte a hozzárendelést, a gombra kattintva végrehajtja a makrót – akárcsak a varázslat.

Amikor hozzáad egy gombot, vegye figyelembe, hogy a legördülő menüben két vezérlőkészlet látható: Űrlapvezérlők és ActiveX-vezérlők. A vezérlőelemek két csoportja hasonlónak tűnik, de valójában nagyon különböznek egymástól. A gyakorlatban a Form Controls könnyebben használható.

Makrót bármely más alakzathoz vagy objektumhoz is hozzárendelhet. Tegyük fel például, hogy szeretne egy makrót végrehajtani, amikor a felhasználó egy téglalap objektumra kattint. Kovesd ezeket a lepeseket:

Adja hozzá a téglalapot a munkalaphoz.

Téglalap beszúrásához válassza a Beszúrás → Illusztrációk → Alakzatok menüpontot.

Kattintson a jobb gombbal a téglalapra.

Válassza a Makró hozzárendelése parancsot a helyi menüből.

Válassza ki a makrót a Makró hozzárendelése párbeszédpanelen.

Kattintson az OK gombra.
Miután végrehajtotta ezeket a lépéseket, a téglalapra kattintva végrehajtja a hozzárendelt makrót.

Az eljárás végrehajtása egy másik Excel VBA eljárásból

Egy másik eljárásból is végrehajthat egy Excel VBA-eljárást. Kövesse az alábbi lépéseket, ha ki szeretné próbálni:

Aktiválja a ShowCubeRoot rutint tároló VBA-modult.

Írja be ezt az új eljárást (a ShowCubeRoot kód fölé vagy alá – ez nem számít):

Sub NewSub()
  Hívja a ShowCubeRootot
Vége Sub

Ha elkészült, egyszerűen végrehajtja a NewSub makrót.

Ennek legegyszerűbb módja, ha a kurzort bárhová mozgatja a NewSub kódon belül, és nyomja meg az F5 billentyűt. Figyelje meg, hogy ez a NewSub eljárás egyszerűen végrehajtja a ShowCubeRoot eljárást.

A Call kulcsszó egyébként nem kötelező. Az utasítás csak a Sub eljárás nevéből állhat. A Call kulcsszó használata azonban tökéletesen egyértelművé teszi, hogy folyamatot hívnak meg.

Excel VBA függvény eljárások végrehajtása

A függvények, a Sub eljárásoktól eltérően, csak kétféleképpen hajthatók végre:

  • A függvény meghívásával egy másik aleljárásból vagy függvényeljárásból
  • A függvény használatával egy munkalapképletben

Próbáld ki ezt az egyszerű funkciót. Írja be egy VBA modulba:

Függvény CubeRoot(szám)
  CubeRoot = szám ^ (1/3)
Funkció befejezése

Ez a funkció elég szelíd; csupán a neki argumentumként átadott szám kockagyökét számítja ki. Ez azonban kiindulópontot ad a funkciók megértéséhez. Illusztrálja a függvényekkel kapcsolatos fontos fogalmat is: hogyan adjuk vissza az értéket. (Emlékszel, hogy egy függvény értéket ad vissza, igaz?)

Figyelje meg, hogy a függvényeljárást alkotó egyetlen kódsor számítást hajt végre. A matematika eredményét (1⁄3 hatványos szám) a CubeRoot változóhoz rendeljük. Nem véletlenül a CubeRoot a függvény neve is. Ha meg szeretné mondani a függvénynek, hogy milyen értéket adjon vissza, hozzá kell rendelnie ezt az értéket a függvény nevéhez.

Az Excel VBA függvényének meghívása egy aleljárásból

Mivel egy függvényt nem lehet közvetlenül végrehajtani, egy másik eljárásból kell meghívnia. Írja be a következő egyszerű eljárást ugyanabban a VBA-modulban, amely tartalmazza a CubeRoot függvényt:

Sub CallerSub()
  Válasz = CubeRoot(125)
  MsgBox Ans
Vége Sub

Amikor végrehajtja a CallerSub eljárást, az Excel megjelenít egy üzenetdobozt, amely tartalmazza az Ans változó értékét, amely 5.

Ez történik: A CubeRoot függvény végrehajtásra kerül, és 125-ös argumentumot kap. A számítást a függvény kódja hajtja végre (a argumentumként átadott érték felhasználásával), és a függvény visszaadott értéke az Ans változóhoz lesz rendelve. Az MsgBox függvény ezután megjeleníti az Ans változó értékét.

Próbálja meg módosítani a CubeRoot függvénynek átadott argumentumot, és futtassa újra a CallerSub makrót. Úgy működik, ahogy kellene – feltételezve, hogy a függvénynek érvényes argumentumot (pozitív számot) ad meg.

A CallerSub eljárását egyébként egy kicsit le lehetne egyszerűsíteni. Az Ans változóra nem igazán van szükség, kivéve, ha a kód később ezt a változót fogja használni. Ezzel az egyetlen kijelentéssel ugyanazt az eredményt kaphatja:

MsgBox CubeRoot (125)

Excel VBA függvény hívása munkalapképletből

Itt az ideje, hogy meghívjuk ezt a VBA-függvény-eljárást egy munkalapképletből. Aktiváljon egy munkalapot ugyanabban a munkafüzetben, amely a CubeRoot függvénydefiníciót tartalmazza. Ezután írja be a következő képletet bármelyik cellába:

=CubeRoot(1728)

A cella 12-t jelenít meg, ami valóban az 1728 kockagyöke.

Ahogy az várható volt, a CubeRoot függvény argumentumaként cellahivatkozást is használhat. Például, ha az A1 cella értéket tartalmaz, akkor írja be a =CubeRoot(A1) értéket . Ebben az esetben a függvény az A1-ben lévő érték kockagyökének kiszámításával kapott számot adja vissza.

Ezt a függvényt tetszőleges számú alkalommal használhatja a munkalapon. Az Excel beépített függvényeihez hasonlóan az egyéni függvényei is megjelennek a Függvény beszúrása párbeszédpanelen. Kattintson a Funkció beszúrása eszköztár gombra, és válassza ki a Felhasználó által meghatározott kategóriát. Az alábbiakban látható módon a Funkció beszúrása párbeszédpanel a saját függvényét sorolja fel.

Az Excel VBA alegységeinek és függvényeinek elnevezése

A CubeRoot függvény a Funkció beszúrása párbeszédpanel Felhasználó által meghatározott kategóriájában jelenik meg.

Ha azt szeretné, hogy a Funkció beszúrása párbeszédpanel megjelenítse a függvény leírását, kövesse az alábbi lépéseket:

Válassza a Fejlesztő → Kód → Makrók lehetőséget.
Az Excel megjeleníti a Makró párbeszédpanelt, de a CubeRoot nem jelenik meg a listában. (A CubeRoot egy függvényeljárás, és ez a lista csak az aleljárásokat mutatja.) Ne aggódjon.

Írja be a CubeRoot szót a Makró neve mezőbe.

Kattintson a Beállítások gombra.

Írja be a funkció leírását a Leírás mezőbe.

Kattintson az OK gombra a Makróbeállítások párbeszédpanel bezárásához.

Zárja be a Makró párbeszédpanelt a Mégse gombra kattintva.
Ez a leíró szöveg most megjelenik a Függvény beszúrása párbeszédpanelen.

Ez a kép a munkalapképletekben használt CubeRoot függvényt mutatja.

Az Excel VBA alegységeinek és függvényeinek elnevezése

A CubeRoot függvény használata képletekben.

Mostanra talán kezdenek összeállni a dolgok az Ön számára.

Leave a Comment

Lábjegyzetek és végjegyzetek létrehozása a Word 2013-ban

Lábjegyzetek és végjegyzetek létrehozása a Word 2013-ban

Lábjegyzetek és végjegyzetek létrehozása a Word 2013-ban. Részletes útmutató, hogyan készíthet különféle stílusú jegyzeteket bibliográfiai információkhoz vagy magyarázó megjegyzésekhez.

Hogyan lehet kiemelni a statisztikailag kiugró értékeket az Excelben

Hogyan lehet kiemelni a statisztikailag kiugró értékeket az Excelben

Tudjon meg mindent arról, hogyan lehet az Excelben kiemelni a statisztikailag kiugró értékeket, mégpedig egyszerű eszközökkel és módszerekkel. Kiemelt figyelmet fordítunk a kiugró értékek azonosítására és kezelésére.

Hogyan lehet mintát venni az adatokból Excelben

Hogyan lehet mintát venni az adatokból Excelben

Az Excel Mintavételi eszközével véletlenszerűen kiválaszthat elemeket egy adatkészletből vagy választhat minden n-edik elemet. Ismerje meg, hogyan használhatja ezt a hasznos funkciót az adatelemzéshez!

10 klassz trükk a Microsoft Word 2019 programmal

10 klassz trükk a Microsoft Word 2019 programmal

Fedezze fel a Microsoft Word 2019 legjobb trükkjeit, amelyek segítenek a hatékonyabb munkavégzésben. Tudd meg, hogyan használhatod ki a program funkcióit!

Bekezdések igazítása és behúzása a Word 2019-ben

Bekezdések igazítása és behúzása a Word 2019-ben

A Word 2019-ben a bekezdések igazítása és behúzása kulcsfontosságú a dokumentumok megfelelő megjelenítéséhez. Ismerje meg a formázási lehetőségeket és tippeket a hatékonyabb munkához.

Az Excel 2019 Solver használata

Az Excel 2019 Solver használata

Fedezze fel, hogyan használhatja az Excel 2019 Solver bővítményt a komplex problémák megoldására. A célcella, változócellák és kényszerek beállítása lépésről lépésre.

Dinamikus elemek hozzáadásához használja a Word 2019 mezőit

Dinamikus elemek hozzáadásához használja a Word 2019 mezőit

A Word lehetővé teszi dinamikus elemek hozzáadását a dokumentumhoz. Fedezze fel, hogyan lehet különböző mezőket használni a Word programban a dinamikus tartalom létrehozásához.

Oszloptípusok a SharePoint 2010-ben

Oszloptípusok a SharePoint 2010-ben

A SharePoint 2010 oszlopai az adatok tárolására szolgálnak. Fedezze fel a különböző oszlop típusokat és azok alkalmazását a SharePoint rendszeren belül.

A nem kívánt szöveg eltávolítása a Word 2013-ban

A nem kívánt szöveg eltávolítása a Word 2013-ban

A Word 2013 szövegtörlésének képessége kulcsfontosságú, legyen szó szövegalkotásról vagy törlésről. Ismerje meg a hatékony szövegtörlési módszereket!

Hogyan készítsünk fotóalbumot a PowerPoint 2016-ban

Hogyan készítsünk fotóalbumot a PowerPoint 2016-ban

A fotóalbum funkció a PowerPoint 2016-ban lehetővé teszi, hogy egyszerre több fényképet illesszen be egy prezentációba, megkönnyítve ezzel a többszörös képek kezelését.