Az egyik módja annak, hogy kódot kapjon a VBA-modulba, ha rögzíti a műveleteit az Excel makrórögzítővel. Egy dologra emlékeznie kell, hogy csak olyan dolgokat rögzíthet, amelyeket közvetlenül megtehet az Excelben. Az üzenetablak megjelenítése nem szerepel az Excel normál repertoárjában. (Ez egy VBA dolog.) A makrórögzítő hasznos, de sok esetben valószínűleg manuálisan kell beírnia legalább egy kódot.
Íme egy lépésenkénti példa, amely bemutatja, hogyan rögzíthet olyan makrót, amely új munkalapot szúr be, és elrejti az első tíz sort és az összes oszlopot, kivéve az első tíz oszlopot. Ha ki szeretné próbálni ezt a példát, kezdjen egy új, üres munkafüzettel, és kövesse az alábbi lépéseket:
Aktiváljon egy munkalapot a munkafüzetben.
Bármely munkalap megteszi.
Kattintson a Fejlesztő fülre, és győződjön meg arról, hogy a Relatív hivatkozások használata lehetőség nincs kijelölve.
Ezt a makrót az Absolute References használatával rögzítjük.
Válassza a Fejlesztő → Kód → Makró rögzítése lehetőséget, vagy kattintson a Kész jelző melletti ikonra az állapotsor bal oldalán.
Az Excel megjeleníti a Makró rögzítése párbeszédpanelt.
A Makró rögzítése párbeszédpanelen nevezze el a makrót TenByTennek, és nyomja le a Shift+T billentyűkombinációt.
A makró a Ctrl+Shift+T megnyomásával végrehajtható.
Kattintson az OK gombra a felvétel elindításához.
Az Excel automatikusan beszúr egy új VBA-modult a projektbe, amely megfelel az aktív munkafüzetnek. Ettől kezdve az Excel a műveleteket VBA-kóddá alakítja. Felvétel közben az állapotsorban lévő ikon kis négyzetté változik. Ez arra emlékeztet, hogy a makrórögzítő fut. Arra az ikonra kattintva is leállíthatja a makrórögzítőt.
Kattintson az Új munkalap ikonra az utolsó lapfül jobb oldalán.
Az Excel beszúr egy új munkalapot.
Jelölje ki a teljes K oszlopot (a 11. oszlopot), és nyomja meg a Ctrl+Shift+jobbra nyíl billentyűkombinációt; majd kattintson a jobb gombbal bármelyik kijelölt oszlopra, és válassza az Elrejtés parancsot a helyi menüből.
Az Excel elrejti az összes kijelölt oszlopot.
Jelölje ki a teljes 11. sort, és nyomja meg a Ctrl+Shift+le nyílbillentyűket; majd kattintson a jobb gombbal bármelyik kiválasztott sorra, és válassza az Elrejtés parancsot a helyi menüből.
Az Excel elrejti az összes kijelölt oszlopot.
Válassza ki az A1 cellát.
Válassza a Fejlesztő → Kód → Rögzítés leállítása lehetőséget, vagy kattintson a Felvétel leállítása gombra az állapotsorban (a kis négyzetben).
Az Excel leállítja a műveletek rögzítését.
Az újonnan rögzített makró megtekintéséhez nyomja meg az Alt+F11 billentyűkombinációt a VBE aktiválásához. Keresse meg a munkafüzet nevét a Projekt ablakban. Látja, hogy a projektben új modul szerepel. A modul neve attól függ, hogy volt-e más modul a munkafüzetben, amikor elkezdte a makró rögzítését. Ha nem, akkor a modul neve Modul1 lesz. A modulra duplán kattintva megtekintheti a modul kódablakát.
Íme a műveletei által generált kód:
Sub TenByTen()
'
TenByTen makró
'
Billentyűparancs: Ctrl+Shift+T
'
Sheets.Add After:=ActiveSheet
Oszlopok („K:K”). Válassza ki
Tartomány(kijelölés, kijelölés.vég(xljobbra)).Kiválasztás
Selection.EntireColumn.Hidden = Igaz
Sorok ("11:11"). Válassza a lehetőséget
Tartomány(Kiválasztás, Kiválasztás.Vége(xlLe)).Válassza ki
Selection.EntireRow.Hidden = Igaz
Tartomány(“A1”). Válassza ki
Vége Sub
A makró kipróbálásához aktiváljon bármely munkalapot, és nyomja meg a 4. lépésben hozzárendelt gyorsbillentyűt: Ctrl+Shift+T.
Ha nem rendelt gyorsbillentyűt a makróhoz, ne aggódjon. Így jelenítheti meg az összes elérhető makró listáját, és futtassa a kívántat:
Válassza a Fejlesztő → Kód → Makrók lehetőséget.
A billentyűzet rajongói megnyomhatják az Alt+F8 billentyűket. Ezen módszerek bármelyike megjelenít egy párbeszédpanelt, amely felsorolja az összes elérhető makrót.
Válassza ki a makrót a listából (ebben az esetben a TenByTen).
Kattintson a Futtatás gombra.
Az Excel végrehajtja a makrót, és kap egy új munkalapot tíz látható sorral és tíz látható oszloppal.
A makrórögzítő futása közben tetszőleges számú parancsot és műveletet hajthat végre. Az Excel kötelességtudóan lefordítja az egérműveleteket és a billentyűleütéseket VBA-kódra.
És természetesen a makrót a rögzítés után is szerkesztheti. Új készségei teszteléséhez próbálja meg szerkeszteni a makrót úgy, hogy az egy kilenc látható sort és oszlopot tartalmazó munkalapot szúrjon be – tökéletes egy Sudoku-rejtvényhez.