Jednou z nepríjemnejších vecí v Exceli je zatváranie mnohých zošitov naraz. Pre každý zošit, ktorý ste otvorili, musíte prácu aktivovať, zavrieť a potvrdiť uloženie zmien. Excel nemá jednoduchý spôsob, ako ich všetky naraz zavrieť. O tú nepríjemnosť sa stará toto malé makro.
Ako funguje makro
V tomto makre kolekcia zošitov prechádza cez všetky otvorené zošity. Keď makro prechádza každým zošitom, uloží ich a zatvorí:
Pod makro1()
'Krok 1: Deklarujte svoje premenné
Dim wb Ako pracovný zošit
„Krok 2: Prezrite si zošity, uložte ich a zatvorte
Pre každý wb v zošitoch
wb.Close SaveChanges:=True
Ďalšie wb
End Sub
Krok 1 deklaruje premennú Object, ktorá predstavuje objekt zošita. To vám umožňuje prechádzať všetky otvorené zošity a priebežne zaznamenávať ich názvy.
Krok 2 jednoducho prechádza cez otvorené zošity, ukladá ich a zatvára. Ak ich nechcete uložiť, zmeňte argument SaveChanges z True na False.
Ako používať makro
Najlepšie miesto na uloženie tohto makra je vo vašom osobnom zošite makier. Takto máte makro vždy k dispozícii. Osobný zošit makier sa načíta vždy, keď spustíte Excel. V okne projektu VBE má názov personal.xlsb.
Aktivujte Editor jazyka Visual Basic stlačením Alt+F11.
Kliknite pravým tlačidlom myši na personal.xlb v okne projektu.
Vyberte Vložiť → Modul.
Zadajte alebo prilepte kód do novovytvoreného modulu.
Ak v okne projektu nevidíte personal.xlb, ešte neexistuje. Budete musieť zaznamenať makro pomocou osobného zošita makier ako cieľa.
Ak chcete zaznamenať makro do osobného zošita makier, otvorte dialógové okno Zaznamenať makro. V rozbaľovacom zozname Uložiť makro do vyberte položku Osobný zošit makier. Potom stačí zaznamenať niekoľko kliknutí na bunky a zastaviť nahrávanie. Zaznamenané makro môžete zahodiť a nahradiť týmto makrom.