S tem makrom boste morda želeli skriti neaktivne delovne liste. Excel vam ne dovoli, da skrijete vse liste v delovnem zvezku; vsaj eden mora biti prikazan. Lahko pa skrijete vse razen aktivnega lista.
Kako deluje makro
Makro se tukaj vrti po delovnih listih in poveže ime vsakega delovnega lista z imenom aktivnega lista. Vsakič, ko se makro zavije, skrije kateri koli neprimerljiv delovni list.
Podmakro1()
1. korak: Deklarirajte svoje spremenljivke
Dim ws As Worksheet
2. korak: Začnite brskati po vseh delovnih listih
Za vsako ws In ThisWorkbook.Worksheets
3. korak: Preverite ime vsakega delovnega lista
Če ws.Name <> ThisWorkbook.ActiveSheet.Name Then
4. korak: skrij list
ws.Visible = xlSheetHidden
Konec Če
5. korak: Pojdite na naslednji delovni list
Naslednji ws
Končni sub
1. korak razglasi objekt, imenovan ws. Ta korak ustvari pomnilniški vsebnik za vsak delovni list, skozi katerega se makro vrti.
2. korak začne zanko in pove Excelu, naj oceni vse delovne liste v tem delovnem zvezku. Upoštevajte razliko med ThisWorkbook in ActiveWorkbook. Objekt ThisWorkBook se nanaša na delovni zvezek, ki vsebuje kodo. Objekt ActiveWorkBook se nanaša na trenutno aktivni delovni zvezek. Pogosto vrnejo isti predmet, a če delovni zvezek, ki izvaja kodo, ni aktivni delovni zvezek, vrnejo različne predmete. V tem primeru ne želite tvegati skrivanja listov v drugih delovnih zvezkih, zato uporabite ThisWorkBook.
V 3. koraku makro preprosto primerja ime aktivnega lista z listom, ki je trenutno v zanki.
Če se imena listov razlikujejo, makro skrije list v 4. koraku.
V 5. koraku se vrnete nazaj, da dobite naslednji list. Ko so vsi listi ovrednoteni, se makro konča.
Upoštevajte, da v makru uporabljate xlsheetHidden. Ta lastnost uporabi privzeto stanje skrivanja, ki bi ga običajno dobili, ko z desno tipko miške kliknete list in izberete Skrij. V tem privzetem stanju skrivanja lahko uporabnik z desno tipko miške klikne kateri koli zavihek in izbere Razkrij, ki prikaže vse skrite liste. Toda drugo skrito stanje je bolj tajno kot privzeto. Če uporabite xlSheetVeryHidden, da skrijete svoje liste, jih uporabniki sploh ne bodo mogli videti – tudi če z desno tipko miške kliknejo zavihek in izberejo Razkrij. Edini način, da razkrijete list, skrit na ta način, je uporaba VBA.
Kako uporabljati makro
Če želite implementirati ta makro, ga lahko kopirate in prilepite v standardni modul:
Aktivirajte urejevalnik Visual Basic s pritiskom na Alt+F11.
Z desno tipko miške kliknite ime projekta/delovnega zvezka v oknu projekta.
Izberite Vstavi → Modul.
V novo ustvarjeni modul vnesite ali prilepite kodo.