Tartalomjegyzék
Ez a bemutató elindítja Önt az Excel makrók megismerésének útján. Megtudhatja, hogyan rögzíthet makrót és illeszthet be VBA kódot az Excelbe, hogyan másolhat makrókat egyik munkafüzetből a másikba, hogyan engedélyezheti és tilthatja le őket, hogyan tekintheti meg a kódot, hogyan végezhet módosításokat, és még sok minden mást.
Az Excel-újoncok számára a makrók fogalma gyakran leküzdhetetlennek tűnik. Valóban, a VBA elsajátítása hónapok vagy akár évekig is eltarthat. Ez azonban nem jelenti azt, hogy ne tudná azonnal kihasználni az Excel makrók automatizálási erejét. Még ha teljesen kezdő is a VBA programozásban, könnyen rögzíthet makrót néhány ismétlődő feladat automatizálására.
Ez a cikk a belépési pont az Excel-makrók lenyűgöző világába. Foglalkozik az alapvető alapokkal, amelyeket tudnia kell a kezdéshez, és linkeket ad a kapcsolódó részletes oktatóprogramokhoz.
Mik azok a makrók az Excelben?
Az Excel-makró a munkafüzetben VBA-kód formájában tárolt parancsok vagy utasítások összessége. Úgy is elképzelhető, mint egy kis program, amely előre meghatározott műveletsorozatot hajt végre. A makrókat bármikor újra lehet használni. Egy makró futtatása a benne lévő parancsokat hajtja végre.
A makrókat általában ismétlődő feladatok és napi rutinok automatizálására használják. A képzett VBA-fejlesztők igazán kifinomult makrókat írhatnak, amelyek jóval túlmutatnak a billentyűleütések számának csökkentésén.
Gyakran hallhatja, hogy az emberek a "makrót" "VBA"-nak nevezik. Technikailag van különbség: a makró egy kódrészlet, míg a Visual Basic for Applications (VBA) a Microsoft által a makrók írására létrehozott programozási nyelv.
Miért érdemes Excel makrókat használni?
A makrók fő célja, hogy kevesebb idő alatt több munkát végezzen el. Ahogyan a képleteket használja a számok kiszámításához és a szöveges karakterláncok manipulálásához, a makrókat gyakori feladatok automatikus elvégzésére használhatja.
Tegyük fel, hogy heti jelentést kell készítenie a felettesének. Ehhez különböző elemzési adatokat importál néhány vagy több külső forrásból. A probléma az, hogy ezek az adatok rendezetlenek, feleslegesek, vagy nem olyan formátumban vannak, amit az Excel megért. Ez azt jelenti, hogy át kell formáznia a dátumokat és a számokat, le kell vágnia a felesleges szóközöket és törölnie kell az üres részeket, az információkat be kell másolnia és be kell illesztenie a megfelelő oszlopokba,diagramokat készíthet a trendek megjelenítéséhez, és még sok más különböző dolgot tehet, hogy a jelentés áttekinthetővé és felhasználóbaráttá váljon. Most pedig képzelje el, hogy mindezeket a műveleteket egy egérkattintással azonnal elvégezheti Ön helyett!
Természetesen egy összetett makró létrehozása időigényes. Néha még több időt is igénybe vehet, mint ugyanezen manipulációk kézzel történő végrehajtása. De egy makró létrehozása egyszeri beállítás. Miután megírta, hibakeresésbe vonta és tesztelte, a VBA-kód gyorsan és hibátlanul elvégzi a munkát, minimalizálva az emberi hibákat és a költséges hibákat.
Hogyan hozzon létre makrót az Excelben
Az Excelben kétféleképpen hozhat létre makrókat: a Makrófelvevő és a Visual Basic szerkesztő használatával.
Tipp: Az Excelben a makrókkal végzett műveletek többsége a Fejlesztő lapot, ezért mindenképpen adja hozzá a Fejlesztő lapot az Excel szalaghoz.
Makró felvétele
Még ha semmit sem tudsz a programozásról általában, és különösen a VBA-ról, akkor is könnyen automatizálhatod a munkád egy részét, ha hagyod, hogy az Excel makró formájában rögzítse a műveleteidet. Miközben a lépéseket végzed, az Excel szorosan figyeli és leírja az egérkattintásaidat és a billentyűleütéseidet a VBA nyelvén.
A Makrófelvevő szinte mindent rögzít, amit Ön csinál, és egy nagyon részletes (gyakran redundáns) kódot készít. Miután leállította a felvételt és elmentette a makrót, a Visual Basic szerkesztőben megtekintheti a kódját, és apró módosításokat végezhet rajta. Amikor futtatja a makrót, az Excel visszalép a rögzített VBA-kódhoz, és pontosan ugyanazokat a mozdulatokat hajtja végre.
A felvétel elindításához kattintson a Rekord makró gombot a Fejlesztő lap vagy a Állapot bár.
A részletes információkért lásd: Hogyan rögzítsünk makrót az Excelben.
Makró írása a Visual Basic szerkesztőben
A Visual Basic for Applications (VBA) szerkesztő az a hely, ahol a Microsoft Excel tárolja a rögzített és a kézzel írt makrók kódját.
A VBA-szerkesztőben nemcsak műveletsorozatot programozhat, hanem egyéni függvényeket is létrehozhat, saját párbeszédpaneleket jeleníthet meg, különböző feltételeket értékelhet ki, és ami a legfontosabb, kódolhatja a logikát! Természetesen a saját makró létrehozása megköveteli a VBA nyelv szerkezetének és szintaxisának bizonyos szintű ismeretét, ami meghaladja ennek a kezdő oktatóanyagnak a kereteit. De semmi olyan nincs, ami amegakadályozza, hogy valaki más kódját újra felhasználja (mondjuk azt, amit a blogunkon talált :), és még egy teljesen kezdő Excel VBA-felhasználónak sem okozhat nehézséget!
Először is, nyomja meg az Alt + F11 billentyűkombinációt a Visual Basic szerkesztő megnyitásához. Majd illessze be a kódot ebben a két gyors lépésben:
- A bal oldali Projekt Intézőben kattintson a jobb gombbal a célmunkafüzetre, majd kattintson a Beillesztés > Modul .
- A jobb oldali Kód ablakban illessze be a VBA kódot.
Ha kész, nyomja meg az F5 billentyűt a makró futtatásához.
A részletes lépésekért lásd: Hogyan illesszünk be VBA-kódot az Excelbe.
Makrók futtatása az Excelben
Az Excelben többféleképpen is elindíthat egy makrót:
- Makró futtatásához egy munkalapról kattintson a Makrók gombot a Fejlesztő lapot, vagy nyomja meg az Alt + F8 billentyűkombinációt.
- Makró futtatásához a VBA-szerkesztőből nyomja meg a következőket:
- F5 a teljes kód futtatásához.
- F8 a kód soronkénti átnézéséhez. Ez nagyon hasznos a teszteléshez és a hibaelhárításhoz.
Ezen kívül egy makrót elindíthat egy egyéni gombra kattintva vagy a hozzárendelt parancsikon megnyomásával is. A teljes részleteket lásd a Makrók futtatása az Excelben című fejezetben.
Makrók engedélyezése az Excelben
Biztonsági okokból az Excelben alapértelmezés szerint minden makró le van tiltva. Ahhoz tehát, hogy a VBA-kódok varázslatos erejét az Ön javára fordíthassa, tudnia kell, hogyan engedélyezheti őket.
A makrók bekapcsolásának legegyszerűbb módja egy adott munkafüzetre vonatkozóan az, ha a Tartalom engedélyezése gombot a lap tetején megjelenő sárga biztonsági figyelmeztető sávban, amikor először nyit meg egy makrókat tartalmazó munkafüzetet.
Ha többet szeretne megtudni a makróbiztonságról, tekintse meg a Makrók engedélyezése és letiltása az Excelben című részt.
Makróbeállítások módosítása
A Microsoft Excel a VBA-kódok munkafüzetekben történő végrehajtásának engedélyezését vagy megtiltását az alábbiakban kiválasztott makróbeállítás alapján határozza meg Trust Center .
Az alábbiakban az Excel makróbeállítások eléréséhez és szükség esetén módosításához szükséges lépéseket ismertetjük:
- Menjen a Fájl lapot, és válassza a Opciók .
- A bal oldali ablaktáblán válassza a Trust Center , majd kattintson a Bizalmi központ beállításai... .
- A Trust Center párbeszédpanelen kattintson a Makró beállítások a bal oldalon, válassza ki a kívánt opciót, majd kattintson a OK .
Az alábbi képernyőképen az alapértelmezett makróbeállítás van kiválasztva:
További információkért lásd: Excel makróbeállítások magyarázata.
Hogyan nézheti meg, szerkesztheti és hibakeresheti a VBA-kódokat az Excelben?
Egy makró kódjának bármilyen módosítása - függetlenül attól, hogy azt az Excel makrófelvevő automatikusan generálja, vagy Ön írta - a Visual Basic szerkesztőben történik.
A VB-szerkesztő megnyitásához nyomja meg az Alt + F11 billentyűkombinációt, vagy kattintson a Visual Basic gombot a Fejlesztő tab.
A címre. megtekintés és szerkesztés egy adott makró kódja, a Project Explorer a bal oldalon, kattintson duplán az azt tartalmazó modulra, vagy kattintson a jobb gombbal a modulra, és válassza a Kód megtekintése . Ez megnyitja a Kód ablakot, ahol szerkesztheti a kódot.
A címre. tesztelés és hibakeresés egy makrót, használja az F8 billentyűt. Ezzel soronként végigmegy a makró kódján, így láthatja, hogy az egyes sorok milyen hatással vannak a munkalapra. Az éppen végrehajtott sor sárga színnel van kiemelve. A hibakeresési módból való kilépéshez kattintson az F8 billentyűre. Reset gomb az eszköztáron (kék négyzet).
Makró másolása egy másik munkafüzetbe
Makrót készített egy munkafüzetben, és most szeretné más fájlokban is újra felhasználni? Kétféleképpen másolhat makrót az Excelben:
A makrót tartalmazó modul másolása
Ha a célmakró egy különálló modulban található, vagy a modulban lévő összes makró hasznos az Ön számára, akkor érdemes az egész modult átmásolni az egyik munkafüzetből a másikba:
- Nyissa meg mindkét munkafüzetet - azt, amelyik a makrót tartalmazza, és azt, amelyikbe másolni szeretné.
- Nyissa meg a Visual Basic szerkesztőt.
- Keresse meg a Project Explorer ablaktáblán a makrót tartalmazó modult, és húzza a célmunkafüzetbe.
Az alábbi képernyőképen az alábbiakat másoljuk be Modul1 a címről Book1 a címre. Book2 :
Egy makró forráskódjának másolása
Ha a modul sok különböző makrót tartalmaz, míg neked csak egyre van szükséged, akkor csak az adott makró kódját másold be. Íme, hogyan:
- Nyissa meg mindkét munkafüzetet.
- Nyissa meg a Visual Basic szerkesztőt.
- Kattintson duplán a Project Explorer ablaktáblában a másolni kívánt makrót tartalmazó modulra, hogy megnyissa annak Kód ablakát.
- A Kód ablakban keresse meg a célmakrót, jelölje ki a kódját (kezdve a Sub és a következővel végződik End Sub ), és nyomja meg a Ctrl + C billentyűkombinációt a másoláshoz.
- A Projekt Intézőben keresse meg a célmunkafüzetet, majd vagy illesszen be egy új modult (kattintson a jobb gombbal a munkafüzetre, majd kattintson a Beillesztés > Modul ), vagy kattintson duplán egy meglévő modulra, hogy megnyissa annak Kód ablakát.
- A célmodul Kód ablakában nyomja le a Ctrl + V billentyűkombinációt a kód beillesztéséhez. Ha a modul már tartalmaz kódot, görgessen le az utolsó kódsorig, majd illessze be a másolt makrót.
Makrók törlése az Excelben
Ha már nincs szüksége egy bizonyos VBA-kódra, akkor a VBA kódot a Makró párbeszédpanelen vagy a Visual Basic szerkesztőprogramban.
Makró törlése a munkafüzetből
Egy makró törléséhez közvetlenül az Excel munkafüzetből a következő lépéseket kell végrehajtani:
- A Fejlesztő lapon, a Kód: csoport, kattintson a Makrók gombot, vagy nyomja meg az Alt + F8 billentyűkombinációt.
- A Makró párbeszédpanelen válassza ki az eltávolítani kívánt makrót, és kattintson a Törölje a címet. .
Tippek:
- Az összes megnyitott fájlban lévő összes makró megtekintéséhez válassza a Minden nyitott munkafüzet a Makrók a legördülő lista.
- Ahhoz, hogy törölni tudjon egy makrót a Személyes makrók munkafüzetben, először fel kell oldania a Személyes.xlsb elrejtését.
Makró törlése a Visual Basic szerkesztőn keresztül
A VBA-szerkesztő használatának egyik előnye, hogy lehetővé teszi egy teljes modul törlését a benne lévő összes makróval együtt. A VBA-szerkesztő lehetővé teszi továbbá a makrók törlését a személyes makrómunkafüzetben anélkül, hogy a makrók elrejtését feloldaná.
Állandóan modul törlése , végezze el a következő lépéseket:
- A Project Explorer , kattintson a jobb gombbal a modulra, és válassza a Távolítsa el a a kontextusmenüből.
- Amikor megkérdezik, hogy a modul eltávolítása előtt exportálni kívánja-e a modult, kattintson a Nem .
A címre. egy adott makró eltávolítása , egyszerűen törölheti a forráskódját közvetlenül a Kód ablakban. Vagy törölheti a makrót a Eszközök menüben a VBA-szerkesztőben:
- A Eszközök menü, válassza a Makrók . Makrók párbeszédpanel jelenik meg.
- A Makrók A oldalon. legördülő listából válassza ki a nem kívánt makrót tartalmazó projektet.
- A Makró neve mezőben válassza ki a makrót.
- Kattintson a Törölje a címet. gomb.
Makrók mentése az Excelben
Az Excelben rögzített vagy kézzel írt makrók mentéséhez egyszerűen mentse el a munkafüzetet makróként (*.xlms). Íme, hogyan:
- A makrót tartalmazó fájlban kattintson a Mentés gombot, vagy nyomja meg a Ctrl + S billentyűkombinációt.
- A Mentés másként párbeszédpanel jelenik meg. Válassza a Excel makróval támogatott munkafüzet (*.xlsm) a Mentés másként legördülő lista és kattintson a Mentés :
Makrók exportálása és importálása az Excelben
Ha a VBA-kódokat meg szeretné osztani valakivel, vagy egy másik számítógépre szeretné áthelyezni, a leggyorsabb módja a teljes modul .bas fájlként történő exportálása.
Makrók exportálása
A VBA-kódok exportálásához a következőket kell tennie:
- Nyissa meg a makrókat tartalmazó munkafüzetet.
- Nyomja meg az Alt + F11 billentyűkombinációt a Visual Basic szerkesztő megnyitásához.
- A Projekt Intézőben kattintson a jobb gombbal a makrókat tartalmazó modulra, és válassza a Fájl exportálása .
- Navigáljon abba a mappába, ahová az exportált fájlt menteni kívánja, nevezze el a fájlt, és kattintson a Mentés .
Makrók importálása
A VBA-kódokat tartalmazó .bas fájl Excel-be történő importálásához kövesse az alábbi lépéseket:
- Nyissa meg azt a munkafüzetet, amelybe a makrókat importálni szeretné.
- Nyissa meg a Visual Basic szerkesztőt.
- A Projekt Intézőben kattintson a jobb gombbal a projekt nevére, és válassza a Fájl importálása .
- Navigáljon a .bas fájlhoz, és kattintson a Nyissa meg a címet. .
Excel makró példák
Az Excel VBA elsajátításának egyik legjobb módja a kódminták felfedezése. Az alábbiakban nagyon egyszerű VBA kódok példáit találja, amelyek néhány alapvető műveletet automatizálnak. Természetesen ezek a példák nem tanítják meg a kódolást, erre több száz professzionális szintű VBA oktatóanyag létezik. Célunk csupán az, hogy a VBA néhány általános jellemzőjét bemutassuk, amelyek remélhetőleg egy kicsit ismertebbé teszik a filozófiáját.téged.
A munkafüzet összes lapjának elrejtésének feloldása
Ebben a példában a ActiveWorkbook objektumot, hogy visszaadja az aktuálisan aktív munkafüzetet és a Minden egyes hurokkal egyenként végigmegyünk a munkafüzet összes lapján. Minden egyes megtalált lapra beállítjuk a Látható tulajdonsága a xlSheetVisible .
Sub Unhide_All_Sheets() Dim wks As Worksheet For Each wks In ActiveWorkbook.Worksheets wks.Visible = xlSheetVisible Next wks End SubAz aktív munkalap elrejtése vagy nagyon rejtetté tétele
Az aktuálisan aktív lap manipulálásához használja a ActiveSheet Ez a mintamakró megváltoztatja a Látható tulajdonságát az aktív lap xlSheetHidden Ha nagyon el akarja rejteni a lapot, állítsa be a Látható tulajdonsága a xlSheetVeryHidden .
Sub Hide_Active_Sheet() ActiveSheet.Visible = xlSheetHidden End SubA kiválasztott tartomány összes egyesített cellájának egyesítésének feloldása
Ha bizonyos műveleteket nem a teljes munkalapon, hanem egy tartományon szeretne elvégezni, használja a Kiválasztás Például az alábbi kód egy csapásra feloldja az összes egyesített cellát egy kijelölt tartományban.
Sub Unmerge_Cells() Selection.Cells.UnMerge End SubÜzenőmező megjelenítése
Ha valamilyen üzenetet szeretne megjeleníteni a felhasználóknak, használja a MsgBox Itt egy példa egy ilyen makróra a legegyszerűbb formában:
Sub Show_Message() MsgBox ( "Hello World!" ) End SubA valós makrókban az üzenőmezőt jellemzően információs vagy megerősítési célokra használják. Például egy művelet végrehajtása előtt (esetünkben a cellák egyesítésének feloldása) megjelenítünk egy Igen/Nem Ha a felhasználó az "Igen" gombra kattint, a kijelölt cellák nem lesznek összevonva.
Sub Unmerge_Selected_Cells() Dim Answer As String Answer = MsgBox( "Biztos, hogy nem akarja egyesíteni ezeket a cellákat?" , vbQuestion + vbYesNo, "Unmerge Cells" ) If Answer = vbYes Then Selection.Cells.UnMerge End If End If End SubA kód teszteléséhez válasszon ki egy vagy több egyesített cellákat tartalmazó tartományt, és futtassa a makrót. A következő üzenet jelenik meg:
Az alábbiakban olyan összetettebb makrókra mutató linkek találhatók, amelyek kihívást jelentő és időigényes feladatokat automatizálnak:
- Makró több munkafüzet lapjainak egybe történő másolásához
- Makrók az Excel lapok duplikálásához
- Makrók a lapok betűrendbe állításához az Excelben
- Makró a lap jelszó nélküli levédéséhez
- Makró a feltételesen színezett cellák számolásához és összegzéséhez
- Makró számok szavakká alakításához
- Makró az összes munkalap elrejtéséhez, kivéve az aktív lapot
- Makrók a lapok elrejtésének megszüntetéséhez
- Makró az összes oszlop elrejtésének megszüntetéséhez
- Makrók, hogy a lapok nagyon rejtett
- Makró az összes sortörés eltávolításához egy aktív lapon
- Makrók az üres sorok törléséhez
- Makró minden második sor törléséhez
- Makró az üres oszlopok eltávolításához
- Makró minden második oszlop beillesztéséhez
- Makrók az Excel helyesírás-ellenőrzéséhez
- Makró az oszlopok sorokba történő átviteléhez
- Makró az Excel oszlopok megfordításához
- Makrók a nyomtatási terület beállításához
- Makrók az oldaltörések beillesztéséhez
Az Excel makrók védelme
Ha szeretné megakadályozni, hogy makróját mások megnézzék, módosítsák vagy végrehajtsák, jelszóval védheti azt.
Makró zárolása megtekintéshez
A VBA-kódok jogosulatlan megtekintéstől és szerkesztéstől való védelme érdekében tegye a következőket:
- Nyissa meg a VBA-szerkesztőt.
- A Projekt Intézőben kattintson a jobb gombbal a zárolni kívánt projektre, majd válassza a VBAProjekt tulajdonságai...
- A Projekt tulajdonságai párbeszédpanelen, a Védelem lapon ellenőrizze a Projekt zárolása megtekintéshez mezőbe, írja be kétszer a jelszót, és kattintson a OK .
- Mentse, zárja be és nyissa meg újra az Excel-fájlt.
Amikor megpróbálja megtekinteni a kódot a Visual Basic szerkesztőben, a következő párbeszédpanel jelenik meg. Írja be a jelszót, és kattintson az OK gombra.
A címre. makrók feloldása , csak nyissa meg a Projekt tulajdonságai párbeszédpanelen újra, és távolítsa el a pipacsot a Projekt zárolása megtekintéshez doboz.
Megjegyzés: Ez a módszer megvédi a kódot a megtekintéstől és szerkesztéstől, de nem akadályozza meg a végrehajtását.
Jelszóval védett makró futtatása
Ha meg akarja védeni a makrót a végrehajtástól, hogy csak azok a felhasználók futtathassák, akik ismerik a jelszót, adja hozzá a következő kódot, a "jelszó" szó helyett a valódi jelszóval:
Sub Password_Protect() Dim password As Variant password = Application.InputBox( "Please enter Password" , "Password Protected Macro" ) Select Case password Case Is = False 'ne csinálj semmit Case Is = "password" 'a kódod itt Case Else MsgBox "Incorrect Password" End Select End SubA makró a InputBox funkcióval a felhasználót jelszó megadására szólítja fel:
Ha a felhasználó bevitele megegyezik a keményen kódolt jelszóval, akkor a kód végrehajtásra kerül. Ha a jelszó nem egyezik, akkor a "Helytelen jelszó" üzenőmező jelenik meg. Annak megakadályozására, hogy a felhasználó a Visual Basic szerkesztőben kikukucskálhassa a jelszót, ne feledje, hogy a makrót a fentiek szerint zárolja a megtekintéshez.
Megjegyzés: Tekintettel a világhálón elérhető különböző jelszófeltörő programok számára, fontos tudatosítani, hogy ez a védelem nem abszolút. Inkább a véletlen használat elleni védelemnek tekinthetjük.
Excel makró tippek
Az Excel VBA profik rengeteg ötletes trükköt találtak ki, hogy hatékonyabbá tegyék a makrókat. Az alábbiakban megosztok néhányat a kedvenceim közül.
Ha a VBA-kódja aktívan manipulálja a cellák tartalmát, felgyorsíthatja a végrehajtását, ha kikapcsolja a képernyőfrissítést és a képlet újraszámolását. A kód végrehajtása után kapcsolja be újra.
A következő sorokat a kód elejére kell beilleszteni (a következővel kezdődő sorok után) Dim vagy a Sub vonal):
Application.ScreenUpdating = False Application.Calculation = xlCalculationManualA következő sorokat kell hozzáadni a kódod végéhez (a End Sub ):
Application.ScreenUpdating = True Application.Calculation = xlCalculationAutomaticHogyan lehet a VBA kódot több sorra bontani
Amikor a VBA-szerkesztőben kódot írunk, időnként nagyon hosszú utasításokat hozhatunk létre, így vízszintesen kell görgetnünk, hogy láthassuk a sor végét. Ez nem befolyásolja a kód végrehajtását, de megnehezíti a kód vizsgálatát.
Egy hosszú utasítás több sorra osztásához írjon be egy űr amelyet egy aláhúzás (_) azon a ponton, ahol a sort meg akarjuk szakítani. A VBA-ban ezt a sort a sormegszakító karakter .
Ahhoz, hogy a kódot a következő sorban helyesen folytassa, kérjük, kövesse az alábbi szabályokat:
- Ne válassza szét a kódot az argumentumnevek közepén.
- Ne használjon aláhúzást a megjegyzések megszakítására. Többsoros megjegyzések esetén írjon aposztrófot (') minden sor elejére.
- Az aláhúzásnak a sor utolsó karakterének kell lennie, és nem követheti semmi más.
A következő kódpélda azt mutatja, hogyan lehet az utasítást két sorra bontani:
Answer = MsgBox( "Biztos, hogy nem akarja egyesíteni ezeket a cellákat?" , _ vbQuestion + vbYesNo, "Unmerge Cells" )Hogyan tegyünk egy makrót bármelyik munkafüzetből elérhetővé?
Amikor makrót ír vagy rögzít az Excelben, az általában csak az adott munkafüzetből érhető el. Ha ugyanazt a kódot más munkafüzetekben is szeretné újra felhasználni, mentse el a Személyes makró munkafüzetbe. Így a makró bármikor elérhetővé válik, amikor megnyitja az Excelt.
Az egyetlen akadály az, hogy a Személyes makró munkafüzet alapértelmezés szerint nem létezik az Excelben. A létrehozásához legalább egy makró rögzítésére van szükség. A következő bemutatóban minden részletet megtudhat: Személyes makró munkafüzet az Excelben.
Makró művelet visszavonása
Egy makró végrehajtása után a művelet nem állítható vissza a Ctrl + Z billentyűkombinációval, illetve a gombra kattintva. Undo gomb.
A tapasztalt VBA-programozók természetesen érvényesíthetik a bemeneti értékeket és/vagy a kiindulási feltételeket, mielőtt a makró bármilyen változtatást végezhetne a munkalapon, de ez a legtöbb esetben meglehetősen bonyolult.
Egyszerűbb megoldás, ha a makró kódjából menti el az aktív munkafüzetet. Ehhez egyszerűen adja hozzá az alábbi sort, mielőtt a makró bármi mást csinálna:
ActiveWorkbook.SaveOpcionálisan megjeleníthet egy üzenőmezőt is, amely tájékoztatja a felhasználót arról, hogy az aktuális munkafüzetet közvetlenül a makró fő kódjának végrehajtása előtt mentette el.
Így, ha Ön (vagy a felhasználók) nem elégedett az eredménnyel, egyszerűen bezárhatja, majd újra megnyithatja a munkafüzetet.
Az Excel biztonsági figyelmeztetés megjelenítésének leállítása, ha a munkafüzetben nincsenek makrók
Volt már olyan helyzetben, amikor az Excel folyamatosan megkérdezi, hogy engedélyezni szeretné-e a makrókat, miközben biztosan tudja, hogy az adott munkafüzetben nincsenek makrók?
A legvalószínűbb ok az, hogy valamilyen VBA kódot adtak hozzá, majd eltávolítottak, így egy üres modul maradt, ami kiváltja a biztonsági riasztást. Hogy megszabaduljon tőle, egyszerűen törölje a modult, mentse el a munkafüzetet, zárja be és nyissa meg újra. Ha ez nem segít, tegye a következőket:
- A oldalon. ThisWorkbook és minden egyes lapon nyissa meg a Kód ablakot, nyomja meg a Ctrl + A billentyűkombinációt az összes kód kijelöléséhez és törléséhez (még akkor is, ha a Kód ablak üresnek tűnik).
- Törölje a munkafüzetben található UserForms és Class Modules modulokat.
Így hozhat létre és használhat VBA makrókat az Excelben. Köszönöm, hogy elolvastad, és remélem, jövő héten újra találkozunk a blogon!