Excel VBA list zaštite

U Excelu imamo opciju kojom možemo zaštititi naše Excel listove i datoteke od brisanja, preimenovanja i spremanja podataka od bilo kojih drugih promjena koje nisu potrebne. Ova se opcija naziva Protect Sheet i Protect Workbook koja se nalazi u odjeljku Promjene na vrpci izbornika Pregled . Možemo postaviti lozinku pomoću koje možemo spremiti odabrani list od bilo kakvih promjena. Ali što kažem, to se može automatizirati i pomoću VBA koda. Da, možemo stvoriti kôd ili makronaredbu pomoću koje možemo automatski zaključati list i radnu knjižicu. Ali ovaj članak govori o nezaštićenju lista.

Uklanjanje zaštite lista također je vrlo lak postupak zaštite lima. Za uklanjanje lista lista trebamo unijeti lozinku koju smo koristili dok zaključavamo list. Za uklanjanje zaštite lista samo trebamo odabrati naziv radnog lista i funkciju koja se zove Unprotect . Ako je to dostupno u VBA, onda je to samo jednoredni kod. Ako nije, onda trebamo potražiti neki drugi način da to učinimo što ćemo vidjeti u sljedećim primjerima.

Kako ukloniti zaštitu listova u Excelu VBA?

Naučit ćemo kako oduzeti zaštitu lista u Excelu pomoću VBA koda.

Ovdje možete preuzeti ovaj VBA predložak Excel zaštitnog lista Shebe Excel ovdje - VBA Predložak Excel zaštite Sheet Excel

VBA list za zaštitu - Primjer br. 1

Prvo, vidjeli bismo jednostavan primjer uklanjanja zaštite lista. Za to slijedite korake u nastavku:

Korak 1: Prvo otvorite modul na kartici izbornika Umetanje, kao što je prikazano u nastavku.

Korak 2: Sada napišite podprocedura na VBA Unprotect listu. Ili možemo odabrati bilo koje drugo ime da ga definiramo.

Kodirati:

 Sub VBA_Unprotect () Kraj Sub 

Korak 3: Definirajte varijablu pod nazivom Radni list bilo kojim imenom. Poželjno ime koje nalikuje radnom listu, kao što je ExSheet

Kodirati:

 Sub VBA_Unprotect () Dim ExSheet kao kraj radnog lista Sub 

Korak 4: Sada postavite definiranu varijablu radnog lista s nazivom lista, kojeg želimo zaštititi. Ovdje je naziv tog lista Sheet1 .

Kodirati:

 Sub VBA_Unprotect () Dim ExSheet kao skup radnog lista ExSheet = Radni listovi ("Sheet1") Kraj Pot 

Korak 5: Sada dodijelite Unprotect funkciju koja se nalazi na VBA padajućem popisu varijabli radnog lista ExSheet .

Kodirati:

 Pod VBA_Unprotect () Dim ExSheet kao skup radnog lista ExSheet = Radni listovi ("Sheet1") ExSheet.Unprotect End Sub 

Korak 6: Sada unesite lozinku koju smo dali za zaključavanje tog lista. Ovdje je ta lozinka "Open1212". A to može biti bilo što, što ovisi o izboru korisnika.

Kodirati:

 Pod VBA_Unprotect () Dim ExSheet kao skup radnog lista ExSheet = Radni listovi ("Sheet1") ExSheet.Unprotect Lozinka: = "Open1212" Kraj Pot 

Korak 7: Sada ćemo prvo zaštititi Sheet1 klikom na karticu izbornika Review i odabirom opcije Protect Sheet .

Korak 8: Unesite željenu lozinku i kliknite OK da zaštitimo list.

9. korak: Ponovo unesite lozinku za potvrdu.

Korak 10: Jednom kada učinimo, vidjet ćemo da ne možemo ništa promijeniti u tom listu, čak i ako to pokušamo. Sada da uklonimo zaštitu lista, sastavit ćemo svoj pisani kod i pokrenuti ga.

Vidjet ćemo, nakon što se izvrši naš kod, sada smo u mogućnosti izvršiti bilo kakve promjene u Sheet1 .

Korak 11: Što ako uklonimo ili promijenimo liniju koda u koju smo umetnuli lozinku i izvršimo je do uklanjanja zaštite kao što je prikazano u nastavku. Da vidimo što će se dogoditi ako to učinimo.

Kodirati:

 Pod VBA_Unprotect () Dim ExSheet kao skup radnog lista ExSheet = Radni listovi ("Sheet1") ExSheet.Unprotect End Sub 

12. korak: Sada ponovo pokrenite cijeli kod. Vidjet ćemo, pojavit će se okvir za poruke koji će tražiti da unesete lozinku. Ovdje unesite lozinku koju smo odabrali štiteći list i kliknite na U redu.

Također pomoću ovog postupka možemo zaštititi list koji želimo.

VBA zaštitni list - primjer br. 2

Postoji još jedan način zaštite zaštite radnih listova. To je najlakši i najjednostavniji način da to učinite. Za to slijedite dolje navedene korake:

Korak 1: Napišite podprocedura za VBA Unprotect kao što je prikazano u nastavku.

Kodirati:

 Sub VBA_Unprotect2 () Kraj Sub 

2. korak: Upotrijebite funkciju Radnih listova i odaberite list koji želimo zaštititi. Evo, opet je taj list Sheet1 .

Kodirati:

 Sub VBA_Unprotect2 () Radni listovi ("Sheet1") Kraj Sub 

Korak 3: Na sličan način kao što je prikazano u primjeru-1, upotrijebit ćemo naredbu Unprotect zajedno s lozinkom koju smo koristili dok zaključavamo list. Ovdje je naša lozinka za uklanjanje zaštite ista kao i " Open1212 ".

Kodirati:

 Pod VBA_Unprotect2 () Radni listovi ("Sheet1"). Poništi zaštitu lozinke: = "Open1212" End Sub 

Sada je naš kod dovršen. Da bismo to testirali, najprije zaštitite list na isti način kao u primjeru-1 i pokrenite ovaj kôd da biste ga uklonili.

VBA zaštitni list - primjer br. 3

Što ako kažem, ponovo možemo napisati kôd gdje ne trebamo odabrati naziv lista kojega želimo zaštititi. Da, to se može učiniti pomoću petlje. Za to slijedite dolje navedene korake:

Korak 1: Ponovo otvorite modul i napišite podprocedura VBA Unprotect lista kao što je prikazano u nastavku.

Kodirati:

 Sub VBA_Unprotect3 () Kraj Sub 

Korak 2: Upotrijebite DIM za definiranje varijable za Radni list kao Exsheet. To je isti redak koji smo koristili u gornjim primjerima.

Kodirati:

 Sub VBA_Unprotect3 () Dim ExSheet kao kraj radnog lista Sub 

Korak 3: Otvorite petlju For-Next u koju ćemo pisati uvjete bez zaštite.

Kodirati:

 Sub VBA_Unprotect3 () Dim ExSheet kao radni list za sljedeći kraj ExSheet Sub 

4. korak: pisanje uvjeta da svaka otvorena aktivna radna knjiga odabere trenutni aktivni radni list, kao što je prikazano u nastavku.

Kodirati:

 Sub VBA_Unprotect3 () Dim ExSheet kao radni list za svaki eksSheet u ActiveWorkbook.Worksheets Sljedeći kraj ExSheet Sub 

Korak 5: Sada na sličan način kao što je prikazano u gornjim primjerima, upotrijebit ćemo definirane varijable, zajedno s funkcijom Unprotect, za uklanjanje zaštite lista. Ovdje također možemo ili ne smijemo koristiti lozinku. To je neobavezan način.

Kodirati:

 Pod VBA_Unprotect3 () Dim ExSheet kao radni list za svaki ExSheet u ActiveWorkbook.Worksheets ExSheet.Unprotect Lozinka: = "Open1212" Next ExSheet End Sub 

Sastavite kôd i pokrenite ako nije pronađena greška.

Na taj način možemo zaštititi bilo koji otvoreni trenutni radni list bez da čak i odaberemo njegovo ime i slijed. Ovaj će kôd automatski uzeti u obzir onaj list koji je trenutno odabran i otvoren.

Prosci Excel VBA zaštitnog lista

  • Gore prikazani procesi i primjeri najlakše su primijeniti.
  • List možemo zaštititi na oba načina, unoseći samu lozinku u kod ili bez davanja lozinke.
  • To djeluje na isti način kao što ručno uklanjamo zaštitni list.

Stvari koje treba zapamtiti

  • Kako je postupak prilično jednostavan za provedbu, tako da automatizacijom neće biti poboljšanja.
  • Lozinku možemo mijenjati svaki put kada ponovimo postupak zaštite i zaštite zaštite lista.
  • Možemo odabrati naziv lista ili redoslijed lista koji ga želimo zaštititi.
  • Nakon što spremite, spremite kôd u makronaredbi kako biste omogućili excel radni list da biste zaštitili gubitak VBA koda.

Preporučeni članci

Ovo je vodič za VBA nezaštićeni list. Ovdje smo razgovarali o tome kako oduzeti zaštitu Sheet-a u Excelu pomoću VBA koda zajedno s praktičnim primjerima i besplatnim excel predložakom. Možete i pregledati naše druge predložene članke -

  1. VBA javna varijabla (primjeri)
  2. Broj VBA formata s funkcijom
  3. VBA varijanta s tipovima podataka
  4. VBA Randomize | Predlošci Excela
  5. VBA okružje

Kategorija: