Výučba makier Excel VBA pre začiatočníkov s príkladmi

  • Zdieľajte To
Michael Brown

Tento návod vám pomôže naučiť sa makrá Excelu. Dozviete sa, ako zaznamenať makro a vložiť kód VBA do Excelu, kopírovať makrá z jedného zošita do druhého, povoliť a zakázať ich, zobraziť kód, vykonať zmeny a mnoho ďalšieho.

Pre nováčikov v programe Excel sa koncept makier často javí ako neprekonateľný. Naozaj, zvládnutie VBA môže trvať mesiace alebo dokonca roky školenia. To však neznamená, že nemôžete hneď využiť automatizačnú silu makier programu Excel. Aj keď ste v programovaní VBA úplný nováčik, môžete ľahko nahrať makro na automatizáciu niektorých opakujúcich sa úloh.

Tento článok je vstupným bodom do fascinujúceho sveta makier programu Excel. Obsahuje základné informácie, ktoré potrebujete vedieť, aby ste mohli začať, a odkazy na súvisiace podrobné výukové programy.

    Čo sú makrá v programe Excel?

    Makro programu Excel je súbor príkazov alebo pokynov uložených v zošite vo forme kódu VBA. Môžete si ho predstaviť ako malý program na vykonanie vopred definovanej postupnosti akcií. Po vytvorení makra ho môžete kedykoľvek znovu použiť. Spustením makra sa vykonajú príkazy, ktoré obsahuje.

    Makrá sa zvyčajne používajú na automatizáciu opakujúcich sa úloh a každodenných rutinných činností. Skúsení vývojári VBA dokážu napísať skutočne sofistikované makrá, ktoré ďaleko presahujú rámec zníženia počtu stlačení klávesov.

    Často môžete počuť, že ľudia hovoria o "makre" ako o "VBA". Z technického hľadiska existuje rozdiel: makro je časť kódu, zatiaľ čo Visual Basic for Applications (VBA) je programovací jazyk vytvorený spoločnosťou Microsoft na písanie makier.

    Prečo používať makrá programu Excel?

    Hlavným účelom makier je vykonať viac práce za kratší čas. Podobne ako používate vzorce na spracovanie čísel a manipuláciu s textovými reťazcami, môžete pomocou makier automaticky vykonávať časté úlohy.

    Povedzme, že máte vytvoriť týždennú správu pre svojho nadriadeného. Na tento účel importujete rôzne analytické údaje z niekoľkých alebo viacerých externých zdrojov. Problémom je, že tieto údaje sú chaotické, nadbytočné alebo nie sú vo formáte, ktorému Excel rozumie. To znamená, že musíte preformátovať dátumy a čísla, orezať nadbytočné medzery a odstrániť prázdne miesta, skopírovať a vložiť informácie do príslušných stĺpcov,vytvárať grafy na vizualizáciu trendov a robiť mnoho ďalších rôznych vecí, aby bola vaša správa prehľadná a používateľsky prívetivá. Teraz si predstavte, že všetky tieto operácie môžete vykonať okamžite jedným kliknutím myšou!

    Samozrejme, vytvorenie zložitého makra si vyžaduje čas. Niekedy môže trvať dokonca dlhšie ako vykonanie rovnakých manipulácií ručne. Vytvorenie makra je však jednorazové nastavenie. Po napísaní, odladení a otestovaní kódu VBA vykoná prácu rýchlo a bezchybne, čím sa minimalizujú ľudské chyby a nákladné omyly.

    Ako vytvoriť makro v programe Excel

    V programe Excel môžete vytvárať makrá dvoma spôsobmi - pomocou programu Macro Recorder a Editoru Visual Basic.

    Tip. V aplikácii Excel sa väčšina operácií s makrami vykonáva prostredníctvom Vývojár preto si nezabudnite pridať kartu Vývojár na pásku aplikácie Excel.

    Nahrávanie makra

    Aj keď o programovaní vo všeobecnosti a konkrétne o jazyku VBA nič neviete, môžete ľahko automatizovať niektoré svoje činnosti jednoducho tak, že necháte program Excel zaznamenávať vaše činnosti ako makro. Počas vykonávania krokov program Excel pozorne sleduje a zapisuje vaše kliknutia myšou a stlačenia klávesov v jazyku VBA.

    Záznamník makier zachytáva takmer všetko, čo robíte, a vytvára veľmi podrobný (často nadbytočný) kód. Po zastavení záznamu a uložení makra si môžete jeho kód pozrieť v editore jazyka Visual Basic a vykonať malé zmeny. Keď makro spustíte, Excel sa vráti k zaznamenanému kódu VBA a vykoná presne tie isté pohyby.

    Ak chcete spustiť nahrávanie, kliknite na Makro záznamu na tlačidle Vývojár karta alebo Stav bar.

    Podrobné informácie nájdete v časti Ako zaznamenať makro v programe Excel.

    Písanie makra v editore jazyka Visual Basic

    Editor Visual Basic for Applications (VBA) je miesto, kde Microsoft Excel uchováva kód všetkých makier, nahraných aj ručne napísaných.

    V editore VBA môžete nielen naprogramovať postupnosť akcií, ale aj vytvárať vlastné funkcie, zobrazovať vlastné dialógové okná, vyhodnocovať rôzne podmienky a hlavne kódovať logiku! Prirodzene, vytvorenie vlastného makra si vyžaduje určité znalosti štruktúry a syntaxe jazyka VBA, čo presahuje rámec tohto návodu pre začiatočníkov.zabrániť opätovnému použitiu cudzieho kódu (povedzme toho, ktorý ste našli na našom blogu :) a ani úplný nováčik v Exceli VBA by s tým nemal mať žiadne problémy!

    Najprv stlačte klávesovú skratku Alt + F11, čím otvoríte editor jazyka Visual Basic. A potom vložte kód v týchto dvoch rýchlych krokoch:

    1. V Prieskumníkovi projektu vľavo kliknite pravým tlačidlom myši na cieľový zošit a potom kliknite na položku Vložte > Modul .
    2. V okne Kód vpravo vložte kód VBA.

    Po dokončení stlačte kláves F5, čím makro spustíte.

    Podrobný postup nájdete v časti Ako vložiť kód VBA do aplikácie Excel.

    Ako spustiť makrá v programe Excel

    Existuje niekoľko spôsobov, ako spustiť makro v programe Excel:

    • Ak chcete spustiť makro z pracovného hárka, kliknite na tlačidlo Makrá tlačidlo na Vývojár alebo stlačte klávesovú skratku Alt + F8.
    • Ak chcete spustiť makro z editora VBA, stlačte buď:
      • F5 na spustenie celého kódu.
      • F8, aby ste prešli kód po riadkoch. Je to veľmi užitočné pri testovaní a riešení problémov.

    Okrem toho môžete makro spustiť kliknutím na vlastné tlačidlo alebo stlačením priradenej skratky. Podrobné informácie nájdete v časti Ako spúšťať makrá v programe Excel.

    Ako povoliť makrá v programe Excel

    Z bezpečnostných dôvodov sú všetky makrá v programe Excel predvolene vypnuté. Ak teda chcete využiť kúzlo kódov VBA vo svoj prospech, musíte vedieť, ako ich zapnúť.

    Najjednoduchší spôsob, ako zapnúť makrá pre konkrétny zošit, je kliknúť na tlačidlo Povolenie obsahu Tlačidlo v žltom bezpečnostnom výstražnom pruhu, ktorý sa zobrazí v hornej časti hárka pri prvom otvorení zošita s makrami.

    Ďalšie informácie o zabezpečení makier nájdete v časti Ako povoliť a zakázať makrá v programe Excel.

    Ako zmeniť nastavenia makier

    Microsoft Excel určuje, či povolí alebo zakáže vykonávanie kódov VBA vo vašich zošitoch na základe nastavenia makier vybraného v Centrum dôvery .

    Tu sú uvedené kroky na získanie prístupu k nastaveniam makier programu Excel a ich prípadnú zmenu:

    1. Prejdite na Súbor a vyberte kartu Možnosti .
    2. Na ľavej strane panela vyberte Centrum dôvery a potom kliknite na tlačidlo Nastavenia centra dôveryhodnosti... .
    3. V Centrum dôvery v dialógovom okne kliknite na Nastavenia makier vľavo, vyberte požadovanú možnosť a kliknite na tlačidlo OK .

    Na nasledujúcej snímke obrazovky je vybraté predvolené nastavenie makra:

    Ďalšie informácie nájdete v časti Vysvetlenie nastavení makier aplikácie Excel.

    Ako zobrazovať, upravovať a ladiť kódy VBA v programe Excel

    Akékoľvek zmeny v kóde makra, či už ho automaticky vygeneroval program Excel macro recorder alebo ste ho napísali vy, sa vykonávajú v editore jazyka Visual Basic.

    Ak chcete otvoriť editor VB, stlačte klávesovú skratku Alt + F11 alebo kliknite na Visual Basic tlačidlo na Vývojár tab.

    Na zobraziť a upraviť kód konkrétneho makra, v Projekt Explorer vľavo, dvakrát kliknite na modul, ktorý ho obsahuje, alebo kliknite pravým tlačidlom myši na modul a vyberte Zobraziť kód . otvorí sa okno Kód, v ktorom môžete kód upraviť.

    Na testovanie a ladenie Ak chcete ukončiť režim ladenia makra, použite klávesu F8. Týmto spôsobom prejdete riadok po riadku kódom makra a uvidíte, aký vplyv má každý riadok na váš pracovný hárok. Riadok, ktorý sa práve vykonáva, je zvýraznený žltou farbou. Obnovenie na paneli nástrojov (modrý štvorec).

    Ako skopírovať makro do iného zošita

    Vytvorili ste makro v jednom zošite a teraz ho chcete znovu použiť aj v iných súboroch? V programe Excel môžete makro kopírovať dvoma spôsobmi:

    Kopírovanie modulu obsahujúceho makro

    V prípade, že sa cieľové makro nachádza v samostatnom module alebo sú pre vás užitočné všetky makrá v module, potom má zmysel skopírovať celý modul z jedného zošita do druhého:

    1. Otvorte oba zošity - ten, ktorý obsahuje makro, a ten, do ktorého ho chcete skopírovať.
    2. Otvorte editor jazyka Visual Basic.
    3. V podokne Prieskumník projektu nájdite modul obsahujúci makro a presuňte ho do cieľového zošita.

    Na nasledujúcom obrázku kopírujeme Modul1 z adresy Kniha1 na Kniha2 :

    Kopírovanie zdrojového kódu makra

    Ak modul obsahuje veľa rôznych makier, zatiaľ čo vy potrebujete len jedno, skopírujte len kód tohto konkrétneho makra:

    1. Otvorte oba zošity.
    2. Otvorte editor jazyka Visual Basic.
    3. V podokne Prieskumník projektu dvakrát kliknite na modul obsahujúci makro, ktoré chcete skopírovať, aby sa otvorilo jeho okno Kód.
    4. V okne Kód nájdite cieľové makro, vyberte jeho kód (začínajúci na Sub a končiace sa slovami Koniec Sub ) a stlačte klávesovú skratku Ctrl + C, aby ste ho skopírovali.
    5. V Prieskumníkovi projektu nájdite cieľový zošit a potom do neho vložte nový modul (kliknite pravým tlačidlom myši na zošit a kliknite na položku Vložte > Modul ) alebo dvakrát kliknite na existujúci modul, aby sa otvorilo jeho okno Kód.
    6. V okne Kód cieľového modulu vložte kód stlačením klávesovej skratky Ctrl + V. Ak modul už obsahuje nejaký kód, prejdite na posledný riadok kódu a potom vložte skopírované makro.

    Ako odstrániť makrá v programe Excel

    Ak už určitý kód VBA nepotrebujete, môžete ho odstrániť pomocou príkazu Makro dialógové okno alebo editor jazyka Visual Basic.

    Odstránenie makra zo zošita

    Ak chcete odstrániť makro priamo zo zošita programu Excel, vykonajte tieto kroky:

    1. Na Vývojár na karte Kód kliknite na skupinu Makrá alebo stlačte klávesovú skratku Alt + F8.
    2. V Makro vyberte makro, ktoré chcete odstrániť, a kliknite na tlačidlo Odstrániť .

    Tipy:

    • Ak chcete zobraziť všetky makrá vo všetkých otvorených súboroch, vyberte Všetky otvorené zošity z Makrá v rozbaľovací zoznam.
    • Ak chcete odstrániť makro v zošite Osobné makro, musíte najprv zrušiť skrytie súboru Personal.xlsb.

    Odstránenie makra prostredníctvom editora jazyka Visual Basic

    Výhodou používania Editora VBA je, že umožňuje odstrániť celý modul so všetkými makrami, ktoré obsahuje, jedným ťahom. Editor VBA tiež umožňuje odstrániť makrá v osobnom zošite makier bez toho, aby ste ho museli zrušiť.

    Trvalo odstrániť modul , vykonajte tieto kroky:

    1. V Projekt Explorer , kliknite pravým tlačidlom myši na modul a vyberte položku Odstránenie stránky z kontextového menu.
    2. Po zobrazení otázky, či chcete modul pred odstránením exportovať, kliknite na tlačidlo Nie .

    Na odstrániť konkrétne makro , jednoducho odstráňte jeho zdrojový kód priamo v okne Kód. Alebo môžete makro odstrániť pomocou príkazu Nástroje v ponuke Editora VBA:

    1. Z Nástroje v ponuke vyberte položku Makrá . Makrá Zobrazí sa dialógové okno.
    2. V Makrá Na stránke v rozbaľovacom zozname vyberte projekt, ktorý obsahuje nechcené makro.
    3. V Názov makra vyberte makro.
    4. Kliknite na tlačidlo Odstrániť tlačidlo.

    Ako uložiť makrá v programe Excel

    Ak chcete uložiť makro v programe Excel, či už nahrané alebo napísané ručne, stačí zošit uložiť ako povolené makro (*.xlms). Tu je postup:

    1. V súbore, ktorý obsahuje makro, kliknite na tlačidlo Uložiť alebo stlačte klávesovú skratku Ctrl + S .
    2. Stránka Uložiť ako Zobrazí sa dialógové okno. Pracovný zošit programu Excel s podporou makier (*.xlsm) z Uložiť ako typ rozbaľovací zoznam a kliknite na Uložiť :

    Ako exportovať a importovať makrá v programe Excel

    Ak chcete svoje kódy VBA s niekým zdieľať alebo ich presunúť do iného počítača, najrýchlejším spôsobom je exportovať celý modul ako súbor .bas.

    Exportovanie makier

    Ak chcete exportovať svoje kódy VBA, musíte urobiť toto:

    1. Otvorte zošit obsahujúci makrá.
    2. Stlačením klávesov Alt + F11 otvorte editor jazyka Visual Basic.
    3. V Prieskumníkovi projektu kliknite pravým tlačidlom myši na modul obsahujúci makrá a vyberte položku Exportný súbor .
    4. Prejdite do priečinka, do ktorého chcete exportovaný súbor uložiť, pomenujte ho a kliknite na tlačidlo Uložiť .

    Importovanie makier

    Ak chcete do programu Excel importovať súbor .bas s kódmi VBA, postupujte podľa nasledujúcich krokov:

    1. Otvorte zošit, do ktorého chcete importovať makrá.
    2. Otvorte editor jazyka Visual Basic.
    3. V Prieskumníkovi projektu kliknite pravým tlačidlom myši na názov projektu a vyberte položku Importovať súbor .
    4. Prejdite na súbor .bas a kliknite na tlačidlo Otvorte stránku .

    Príklady makier aplikácie Excel

    Jedným z najlepších spôsobov, ako sa naučiť Excel VBA, je preskúmať ukážky kódu. Nižšie nájdete príklady veľmi jednoduchých kódov VBA, ktoré automatizujú niektoré základné operácie. Samozrejme, tieto príklady vás nenaučia kódovať, na to existujú stovky profesionálnych výukových programov VBA. Naším cieľom je len ilustrovať niekoľko bežných funkcií VBA, ktoré vám, dúfajme, trochu priblížia jeho filozofiuvy.

    Zrušenie skrytia všetkých listov v zošite

    V tomto príklade používame ActiveWorkbook vrátiť aktuálne aktívny zošit a Pre každú prechádzame postupne všetky listy v zošite. Pre každý nájdený list nastavíme Viditeľné vlastnosť na xlSheetVisible .

    Sub Unhide_All_Sheets() Dim wks As Worksheet For Each wks In ActiveWorkbook.Worksheets wks.Visible = xlSheetVisible Next wks End Sub

    Skryť aktívny pracovný hárok alebo ho urobiť veľmi skrytým

    Ak chcete manipulovať s aktuálne aktívnym hárkom, použite ActiveSheet Tento príklad makra mení objekt Viditeľné vlastnosť aktívneho listu na xlSheetHidden Ak chcete, aby bol list veľmi skrytý, nastavte Viditeľné vlastnosť na xlSheetVeryHidden .

    Sub Hide_Active_Sheet() ActiveSheet.Visible = xlSheetHidden End Sub

    Zrušenie zlúčenia všetkých zlúčených buniek vo vybranom rozsahu

    Ak chcete vykonať určité operácie na rozsahu a nie na celom hárku, použite príkaz Výber Napríklad nasledujúci kód zruší zlúčenie všetkých zlúčených buniek vo vybranom rozsahu jedným ťahom.

    Sub Unmerge_Cells() Selection.Cells.UnMerge End Sub

    Zobrazenie poľa správy

    Ak chcete používateľom zobraziť nejakú správu, použite príkaz MsgBox Tu je príklad takéhoto makra v najjednoduchšej podobe:

    Sub Show_Message() MsgBox ("Hello World!" ) End Sub

    V reálnych makrách sa okno so správou zvyčajne používa na informačné alebo potvrdzovacie účely. Napríklad pred vykonaním akcie (v našom prípade rozpojenie buniek) sa zobrazí Áno/Nie Ak používateľ klikne na tlačidlo "Áno", vybrané bunky sa rozbalia.

    Sub Unmerge_Selected_Cells() Dim Answer As String Answer = MsgBox( "Určite chcete zrušiť zlúčenie týchto buniek?" , vbQuestion + vbYesNo, "Unmerge Cells" ) If Answer = vbYes Then Selection.Cells.UnMerge End If End Sub

    Ak chcete otestovať kód, vyberte jeden alebo viac rozsahov obsahujúcich zlúčené bunky a spustite makro. Zobrazí sa nasledujúca správa:

    Nižšie sú uvedené odkazy na zložitejšie makrá, ktoré automatizujú náročné a časovo náročné úlohy:

    • Makro na kopírovanie listov z viacerých zošitov do jedného
    • Makrá na duplikovanie hárkov v programe Excel
    • Makrá na abecedné usporiadanie kariet v programe Excel
    • Makro na zrušenie ochrany hárku bez hesla
    • Makro na počítanie a sčítanie podmienečne zafarbených buniek
    • Makro na prevod čísel na slová
    • Makro na skrytie všetkých pracovných hárkov okrem aktívneho hárku
    • Makrá na odkrývanie hárkov
    • Makro na odkrývanie všetkých stĺpcov
    • Makrá na vytvorenie veľmi skrytých listov
    • Makro na odstránenie všetkých zlomov riadkov v aktívnom hárku
    • Makrá na odstraňovanie prázdnych riadkov
    • Makro na vymazanie každého druhého riadku
    • Makro na odstránenie prázdnych stĺpcov
    • Makro na vloženie každého druhého stĺpca
    • Makrá na kontrolu pravopisu v programe Excel
    • Makro na transpozíciu stĺpcov do riadkov
    • Makro na prevrátenie stĺpcov v programe Excel
    • Makrá na nastavenie oblasti tlače
    • Makrá na vkladanie zlomov strán

    Ako chrániť makrá aplikácie Excel

    Ak chcete zabrániť tomu, aby vaše makro videli, upravovali alebo spúšťali iné osoby, môžete ho chrániť heslom.

    Uzamknutie makra na zobrazenie

    Ak chcete chrániť svoje kódy VBA pred neoprávneným prezeraním a úpravami, postupujte takto:

    1. Otvorte editor VBA.
    2. V Prieskumníkovi projektov kliknite pravým tlačidlom myši na projekt, ktorý chcete uzamknúť, a vyberte položku VBAProject Vlastnosti...
    3. V Vlastnosti projektu v dialógovom okne Ochrana začiarknite kartu Uzamknutie projektu na zobrazenie zadajte dvakrát heslo a kliknite na tlačidlo OK .
    4. Uložte, zatvorte a znovu otvorte súbor programu Excel.

    Pri pokuse o zobrazenie kódu v editore Visual Basic sa zobrazí nasledujúce dialógové okno. Zadajte heslo a kliknite na tlačidlo OK.

    Na odomknutie makier , stačí otvoriť Vlastnosti projektu dialógové okno a odstráňte začiarknutie z Uzamknutie projektu na zobrazenie box.

    Poznámka: Táto metóda chráni kód pred zobrazením a úpravami, ale nebráni jeho vykonaniu.

    Ochrana heslom pred spustením makra

    Ak chcete chrániť svoje makro pred spustením tak, aby ho mohli spustiť len používatelia, ktorí poznajú heslo, pridajte nasledujúci kód, pričom slovo "heslo" nahraďte svojím skutočným heslom:

    Sub Password_Protect() Dim password As Variant password = Application.InputBox( "Please enter Password" , "Password Protected Macro" ) Select Case password Case Is = False 'nerobiť nič Case Is = "password" 'váš kód tu Case Else MsgBox "Incorrect Password" End Select End Sub

    Makro používa InputBox funkcia vyzve používateľa na zadanie hesla:

    Ak sa vstup používateľa zhoduje s pevne zadaným heslom, váš kód sa vykoná. Ak sa heslo nezhoduje, zobrazí sa okno s hlásením "Nesprávne heslo". Ak chcete zabrániť používateľovi, aby nahliadol do hesla v editore jazyka Visual Basic, nezabudnite makro uzamknúť pre zobrazenie, ako je vysvetlené vyššie.

    Poznámka: Vzhľadom na množstvo rôznych programov na lámanie hesiel dostupných na internete je dôležité si uvedomiť, že táto ochrana nie je absolútna. Môžete ju považovať skôr za ochranu pred náhodným použitím.

    Tipy pre makro aplikácie Excel

    Profesionáli v programe Excel VBA vymysleli množstvo dômyselných trikov na zefektívnenie svojich makier. Nižšie sa podelím o niekoľko svojich obľúbených.

      Ak váš kód VBA aktívne manipuluje s obsahom bunky, môžete jeho vykonávanie urýchliť vypnutím obnovovania obrazovky a prepočítavania vzorcov. Po vykonaní kódu túto funkciu opäť zapnite.

      Nasledujúce riadky sa pridajú na začiatok vášho kódu (za riadky začínajúce na Dim alebo po Sub riadok):

      Application.ScreenUpdating = False Application.Calculation = xlCalculationManual

      Nasledujúce riadky je potrebné pridať na koniec vášho kódu (pred Koniec Sub ):

      Application.ScreenUpdating = True Application.Calculation = xlCalculationAutomatic

      Ako rozdeliť kód VBA na viac riadkov

      Pri písaní kódu v editore VBA môžete niekedy vytvoriť veľmi dlhé príkazy, takže sa musíte posúvať horizontálne, aby ste zobrazili koniec riadku. To nemá vplyv na vykonávanie kódu, ale sťažuje to jeho kontrolu.

      Ak chcete rozdeliť dlhý príkaz na niekoľko riadkov, zadajte priestor po ktorom nasleduje podčiarkovník (_) v mieste, kde chcete riadok prerušiť. Vo VBA sa tento bod nazýva znak ukončenia riadku .

      Ak chcete správne pokračovať v kóde na ďalšom riadku, dodržiavajte tieto pravidlá:

      • Nerozdeľujte kód uprostred názvov argumentov.
      • Na zalomenie komentárov nepoužívajte podčiarkovník. V prípade viacriadkových komentárov napíšte na začiatok každého riadku apostrof (').
      • Podčiarkovník musí byť posledným znakom na riadku, za ktorým nesmie nasledovať nič iné.

      Nasledujúci príklad kódu ukazuje, ako rozdeliť príkaz na dva riadky:

      Answer = MsgBox( "Určite chcete tieto bunky nezlúčiť?" , _ vbQuestion + vbYesNo, "Unmerge Cells" )

      Ako sprístupniť makro z ľubovoľného zošita

      Keď napíšete alebo zaznamenáte makro v programe Excel, zvyčajne je prístupné len z daného zošita. Ak chcete ten istý kód opätovne použiť aj v iných zošitoch, uložte ho do zošita Osobné makro. Takto bude makro k dispozícii vždy, keď otvoríte program Excel.

      Jedinou prekážkou je, že osobný zošit makier v programe Excel štandardne neexistuje. Ak ho chcete vytvoriť, musíte zaznamenať aspoň jedno makro. Všetky podrobnosti nájdete v nasledujúcom návode: Osobný zošit makier v programe Excel

      Ako zrušiť akciu makra

      Po vykonaní makra nemožno jeho činnosť vrátiť späť stlačením klávesovej skratky Ctrl + Z ani kliknutím na tlačidlo Zrušiť tlačidlo.

      Skúsení programátori VBA môžu, samozrejme, overiť vstupné hodnoty a/alebo počiatočné podmienky predtým, ako makro vykoná akékoľvek zmeny v pracovnom hárku, ale vo väčšine prípadov je to dosť komplikované.

      Jednoduchším spôsobom je uložiť aktívny zošit z kódu makra. Na tento účel jednoducho pridajte nasledujúci riadok predtým, ako necháte makro vykonať čokoľvek iné:

      ActiveWorkbook.Save

      Voliteľne môžete zobraziť aj okno s hlásením, ktoré informuje používateľa, že aktuálny zošit bol uložený tesne pred vykonaním hlavného kódu makra.

      Ak vy (alebo vaši používatelia) nie ste spokojní s výsledkami, môžete zošit jednoducho zatvoriť a potom ho znova otvoriť.

      Zabrániť programu Excel zobrazovať bezpečnostné upozornenie, keď v zošite nie sú žiadne makrá

      Ocitli ste sa niekedy v situácii, keď sa vás Excel neustále pýtal, či chcete povoliť makrá, hoci ste určite vedeli, že v danom zošite žiadne makrá nie sú?

      Najpravdepodobnejšou príčinou je, že bol pridaný a potom odstránený nejaký kód VBA, čím vznikol prázdny modul, ktorý spustí bezpečnostné upozornenie. Ak sa ho chcete zbaviť, jednoducho odstráňte modul, uložte zošit, zatvorte ho a znovu otvorte. Ak to nepomôže, postupujte takto:

      • Pre Tento pracovný zošit a pre každý jednotlivý hárok otvorte okno Kód, stlačte klávesovú skratku Ctrl + A, aby ste vybrali celý kód a vymazali ho (aj keď okno Kód vyzerá prázdne).
      • Odstráňte všetky UserForms a Class Modules, ktoré zošit obsahuje.

      Takto sa vytvárajú a používajú makrá VBA v programe Excel. Ďakujem vám za prečítanie a dúfam, že sa opäť uvidíme na našom blogu budúci týždeň!

      Michael Brown je nadšený technologický nadšenec s vášňou pre zjednodušovanie zložitých procesov pomocou softvérových nástrojov. S viac ako desaťročnými skúsenosťami v technologickom priemysle si zdokonalil svoje zručnosti v programoch Microsoft Excel a Outlook, ako aj Tabuľky Google a Dokumenty. Michaelov blog je venovaný zdieľaniu svojich vedomostí a odborných znalostí s ostatnými a poskytuje jednoduché tipy a návody na zlepšenie produktivity a efektivity. Či už ste skúsený profesionál alebo začiatočník, Michaelov blog ponúka cenné poznatky a praktické rady, ako z týchto základných softvérových nástrojov vyťažiť maximum.