Ochrana zošita VBA (ochrana heslom / zrušenie ochrany)

Excel vám umožňuje chrániť svoje zošity programu Excel pred zmenami. Tento tutoriál vám ukáže, ako chrániť alebo odomknúť štruktúru zošita pomocou VBA.

Ochrana zošita VBA

Ochrana zošita VBA vám umožňuje uzamknúť štruktúru zošita. Keď je zošit chránený, používatelia nebudú môcť pridávať, odstraňovať, skrývať / odkrývať alebo chrániť / odomknúť pracovné hárky. Ak staviate model, pravdepodobne budete chcieť zapnúť ochranu zošita, aby sa zabránilo používateľom (alebo vám!) V náhodnom odstránení pracovných hárkov.

Zrušiť ochranu zošita VBA

Na zrušenie ochrany zošita jednoducho použite nasledujúci riadok kódu:

1 Zošity („Kniha 1“). Zrušte ochranu

Poznámka: tento kód bude fungovať, iba ak bude zošit chránený bez heslo. Ak bolo chránené heslom, musíte ho tiež odomknúť zadaním hesla:

Zrušiť ochranu zošita heslom

Tento riadok kódu zruší ochranu zošita, ktorý bol chránený heslom:

1 Zošity („Kniha 1“). Zrušte ochranu hesla: = „heslo“

alebo môžete vynechať Heslo: =

1 Zošity („Kniha 1“). Zrušte ochranu „hesla“

Zrušiť ochranu tejto Pracovnej knihy

Tento kód zruší ochranu programu ThisWorkbook (ThisWorkbook je zošit, kde je uložený spustený kód. Nikdy sa nezmení).

1 ThisWorkbook.Unprotect

alebo zrušte ochranu ThisWorkbook pomocou hesla:

1 ThisWorkbook.Unprotect "heslo"

Zrušiť ochranu ActiveWorkbook

Tento kód zruší ochranu ActiveWorbooku.

1 ActiveWorkbook. Zrušiť ochranu

alebo zrušte ochranu ActiveWorkbooku pomocou hesla:

1 ActiveWorkbook. Zrušte ochranu „hesla“

Zrušiť ochranu všetkých otvorených zošitov

Tento kód zruší ochranu všetkých otvorených zošitov:

12345678 Sub UnprotectAllOpenWorkbooks ()Dim wb ako zošitPre každý wb v zošitochwb. Zrušiť ochranuDalsie wbKoniec pod

Zošit UnProtect - bez znalosti hesla

Ak potrebujete zrušiť ochranu zošita bez znalosti hesla, existuje niekoľko doplnkov, ktoré vám pomôžu. Odporučil by som Ribbon Commander.

Zrušte ochranu všetkých hárkov v zošite

Po zrušení ochrany zošita môžete tiež chcieť zrušiť ochranu všetkých hárkov v zošite. Tu je postup, ktorý odstráni ochranu všetkých hárkov:

12345678 Sub UnProtectWorkbookAndAllSheets ()Dim ws As worksheetActiveWorkbook. Zrušiť ochranuZa každé ws v pracovných listochws.UnprotectĎalšieKoniec pod

Chráňte zošit

Štruktúry zošita môžete chrániť rovnakým spôsobom, akým zrušíte ochranu.

Chráňte zošit bez hesla

Tento riadok kódu ochráni zošit (žiadne heslo)

1 Zošity („Kniha 1“). Chráňte

Poznámka: Často používam ochranu zošita bez hesiel, len aby som tomu zabránil náhodný zmeny v pracovných zošitoch.

Chráňte zošit heslom

Tento kód ochráni štruktúru zošita (pomocou hesla)

1 Zošity („Kniha 1“). Chráňte „heslo“

alebo:

1 Zošity („Kniha 1“). Chrániť heslo: = „heslo“

Súbor Excel chránený heslom

Namiesto ochrany zošita možno budete chcieť chrániť celý súbor programu Excel heslom. Ak to chcete urobiť pomocou VBA, uložte ako zošit s heslom:

1 Zošity („Kniha 1“). Uložiť ako „heslo“

Príklady zošitov Protect / UnProtect

Odkryte všetky pracovné hárky v chránenom zošite

Tento postup zruší ochranu zošita, skryje všetky pracovné hárky a zošit znova ochráni

12345678910 Podzabránenie ochranyWB_Unhide_All_Sheets ()Dim ws As worksheetActiveWorkbook. Zrušiť ochranuZa každé ws v pracovných listochws.Visible = xlSheetVisibleĎalšieActiveWorkbook.ProtectKoniec pod

Chráňte zošit a všetky listy

Tento postup ochráni všetky pracovné hárky v zošite a potom ochráni zošit:

1234567891011 Sub ProtectWB_Protect_All_Sheets ()Dim ws As worksheetActiveWorkbook. Zrušiť ochranuZa každé ws v pracovných listochws.ChrániťĎalšieActiveWorkbook.ProtectKoniec pod

Môžete tiež pridať ochranu heslom:

1234567891011 Sub ProtectWB_Protect_All_Sheets_Pswrd ()Dim ws As worksheetActiveWorkbook. Zrušte ochranu „hesla“Za každé ws v pracovných listochws.Chráňte "heslo"ĎalšieActiveWorkbook.Protect "heslo"Koniec pod
wave wave wave wave wave