Programma Excel ļauj aizsargāt Excel darbgrāmatas no izmaiņām. Šī apmācība parādīs, kā aizsargāt vai aizsargāt darbgrāmatas struktūru, izmantojot VBA.
VBA darbgrāmatas aizsardzība
VBA darbgrāmatu aizsardzība ļauj bloķēt darbgrāmatas struktūru. Ja darbgrāmata ir aizsargāta, lietotāji nevarēs pievienot, dzēst, paslēpt / paslēpt vai aizsargāt / aizsargāt darblapas. Ja veidojat modeli, iespējams, vēlaties ieslēgt darbgrāmatas aizsardzību, lai lietotāji (vai jūs!) Nejauši neizdzēstu darblapas.
UnProtect darbgrāmatas VBA
Lai atsauktu darbgrāmatas aizsardzību, vienkārši izmantojiet šādu koda rindu:
1 | Darbgrāmatas ("1. grāmata"). Atsaukt aizsardzību |
Piezīme: šis kods darbosies tikai tad, ja darbgrāmata būs aizsargāta bez paroli. Ja tas bija aizsargāts ar paroli, jums arī jāievada parole, lai to noņemtu:
Neaizsargāt darbgrāmatu ar paroli
Šī koda rindiņa atcels darbgrāmatas aizsardzību, kas ir aizsargāta ar paroli:
1 | Darbgrāmatas ("1. grāmata"). Paroles aizsardzības noņemšana: = "parole" |
vai arī varat atcelt paroli: =
1 | Darbgrāmatas ("1. grāmata"). Atcelt "paroles" aizsardzību |
Neaizsargāt šo darba grāmatu
Šis kods atcels šīs darba grāmatas aizsardzību (šī darba grāmata ir darbgrāmata, kurā tiek saglabāts darbības kods. Tā nekad nemainīsies).
1 | Šī darba grāmata. Aizsargāt |
vai aizsargājiet šo darba grāmatu ar paroli:
1 | ThisWorkbook.Aizsargāt "paroli" |
Neaizsargāt ActiveWorkbook
Šis kods atcels ActiveWorbook aizsardzību.
1 | ActiveWorkbook. Aizsargāt |
vai noņemiet ActiveWorkbook aizsardzību ar paroli:
1 | ActiveWorkbook.Aizsargāt "paroli" |
Neaizsargāt visas atvērtās darbgrāmatas
Šis kods noņems visu atvērto darbgrāmatu aizsardzību:
12345678 | Sub UnprotectAllOpenWorkbooks ()Dim wb kā darbgrāmataPar katru wb darbgrāmatāswb. NeaizsargātNākamais wbBeigu apakš |
UnProtect darbgrāmata - nezinot paroli
Ja jums ir jāatceļ darbgrāmatas aizsardzība, nezinot paroli, ir pieejami vairāki papildinājumi. Es ieteiktu lentes komandieri.
Neaizsargāt visas darbgrāmatas lapas
Pēc darbgrāmatas aizsardzības atcelšanas, iespējams, vēlēsities arī noņemt visas darbgrāmatas lapas. Tālāk ir aprakstīta procedūra, kas novērsīs visu lapu aizsardzību:
12345678 | Sub UnProtectWorkbookAndAllSheets ()Dim ws kā darblapaActiveWorkbook. AizsargātPar katru ws darblapāsws. AizsargātNākamaisBeigu apakš |
Aizsargāt darbgrāmatu
Jūs varat aizsargāt darbgrāmatu struktūras tāpat kā atceļot aizsardzību.
Aizsargāt darbgrāmatu bez paroles
Šī koda rinda aizsargās darbgrāmatu (bez paroles)
1 | Darba burtnīcas ("1. grāmata"). Aizsargāt |
Piezīme. Es bieži izmantošu darbgrāmatu aizsardzību bez parolēm, vienkārši lai novērstu nejauši izmaiņas darba burtnīcās.
Aizsargājiet darbgrāmatu ar paroli
Šis kods aizsargās darbgrāmatas struktūru (ar paroli)
1 | Darbgrāmatas ("1. grāmata"). Aizsargājiet "paroli" |
vai:
1 | Darbgrāmatas ("1. grāmata"). Aizsargāt paroli: = "parole" |
Aizsargājiet Excel failu ar paroli
Darbgrāmatas aizsardzības vietā, iespējams, vēlēsities ar paroli aizsargāt visu Excel failu. Lai to izdarītu, izmantojot VBA, saglabājiet kā darbgrāmatu ar paroli:
1 | Darbgrāmatas ("1. grāmata"). Saglabāt kā "paroli" |
Aizsargāt / neatbalstīt darbgrāmatas piemērus
Rādīt visas darblapas aizsargātajā darbgrāmatā
Šī procedūra atcels darbgrāmatas aizsardzību, paslēps visas darblapas un atkārtoti aizsargās darbgrāmatu
12345678910 | Apakšējā aizsardzībaWB_Unhide_All_Sheets ()Dim ws kā darblapaActiveWorkbook. AizsargātPar katru ws darblapāsws.Visible = xlSheetVisibleNākamaisActiveWorkbook.ProtectBeigu apakš |
Aizsargājiet darbgrāmatu un visas lapas
Šī procedūra aizsargās visas darbgrāmatas darblapas un pēc tam aizsargās darbgrāmatu:
1234567891011 | Sub ProtectWB_Protect_All_Sheets ()Dim ws kā darblapaActiveWorkbook. AizsargātPar katru ws darblapāsws. AizsargātNākamaisActiveWorkbook.ProtectBeigu apakš |
Varat arī pievienot paroles aizsardzību:
1234567891011 | Sub ProtectWB_Protect_All_Sheets_Pswrd ()Dim ws kā darblapaActiveWorkbook.Aizsargāt "paroli"Par katru ws darblapāsws.Aizsargājiet "paroli"NākamaisActiveWorkbook.Protect "parole"Beigu apakš |