Exceli VBA kaitseleht

Töölehe kaitsmine on oluline ülesanne neile, kes töötavad Microsoft Exceliga väga sageli. See on ülesanne, mida peate kaitsma oma lehe mõne muu kasutaja redigeerimise eest. Oletame, et saadate juhtkonnale aruande ja siis muudab juhtkond aruande kaudu teadlikult või ekslikult parameetreid või väärtusi. Vea tuvastamine muutub kirglikuks ning samal ajal kulutab ümbertöötamine midagi teie aega. Sellest probleemist ülesaamiseks on alati hea tava kaitsta lehti / paroole, mida saab redigeerida parooliga. See suvand aitab teil mitte lubada kasutajal lehtedel / lehtedel muudatusi teha. Samuti saate parooli jagada inimesega, kellele see on ette nähtud, ja volitus muudatuste tegemiseks. Ehkki Excelis on Exceli lindil oleva ülevaate vahekaardi kaudu suvand Kaitse töölehte kaitsta, muutub see kirglikuks, kui teil on rohkem kui üks leht, mida kaitsta. See võtab palju aega, kaitstes iga lehte ükshaaval. Selle asemel on hea tava kirjutada VBA-kood, mis kaitseb tööraamatu redigeerimise eest kas üksikuid või mitu lehte.

VBA kaitselehe süntaks

See töölehega seotud sisseehitatud VBA-funktsioon võimaldab lehte kaitsta paroolide abil. Funktsiooni VBA Protect Sheet süntaks on järgmine:

Kõik parameetrid on selles funktsioonis valikulised, mida saate ära arvata kõigi nende jaoks nimetatud ruudukujuliste sulgude kaudu.

  • Parool: määrab lehe parooli. Kui lehte ei pakuta, on leht ilma paroolita kaitstud ja kasutaja saab seda redigeerida ilma parooli küsimata.
  • DrawingObjects: valikulised argumendid, mis võimaldavad kaitsta töölehe erinevaid kujundeid. Võtab Boole väärtused. Vaikimisi seatud väärtusele FALSE.
  • Sisu: valikuline argument. Kaitseb kõiki objekte. Vaikimisi seatakse väärtuseks TRUE.
  • Stsenaariumid: kaitseb kõiki erinevaid stsenaariume. Vaikeväärtus on seatud väärtusele TRUE.
  • UserInterfaceOnly: see kaitseb kasutajaliidest, kuid mitte makrosid. Vaikeväärtus on TRUE, kui makro eiratakse, samuti on kasutajaliides kaitstud.
  • AllowFormattingCells: vaikeväärtus on seatud väärtusele FALSE, mille tõttu kasutaja ei saa lehe lahtreid vormindada. Kui seadeks on TRUE, saab kasutaja lahtrid vormindada lehelt.
  • AllowInsertingColumns: vaikeväärtuseks on seatud FALSE. Kui väärtus on TRUE, saab kasutaja lehe sisestada veeru.
  • AllowInsertingRows: vaikeväärtuseks on seatud FALSE. Kui väärtus on TRUE, saab kasutaja lehele ridu lisada.
  • AllowInsertingHyperlinks: vaikeväärtuseks on seatud FALSE. Kui seadeks on TRUE, saab kasutaja lehele hüperlinke sisestada.
  • AllowDetelyColumns: vaikeväärtuseks on seatud VÄÄRTUS . Kui seadeks on TRUE, saab kasutaja kustutada lehelt kõik veerud.
  • AllowDetelyRows: vaikeväärtuseks on seatud VÄÄRTUS . Kui seadeks on TRUE, saab kasutaja kustutada lehelt suvalise arvu ridu.
  • AllowSorting: vaikeväärtuseks on seatud VÄÄRTUS . Kui seadeks on TRUE, saab kasutaja lehel olevaid andmeid sortida.
  • AllowFiltering: vaikeväärtuseks on seatud FALSE. Kui see on valitud TÕESE, saab kasutaja lehel olevaid andmeid filtreerida.
  • AllowUsingPivotTables: vaikeväärtuseks on seatud VÄÄRTUS . Kui seadeks on TRUE, saab kasutaja pöördtabeleid kasutada ja muuta.

Kuidas kaitsta lehte Excel VBA-s?

Allpool on toodud erinevad näited lehe kaitsmiseks Excelis, kasutades VBA kaitset.

Selle VBA Protect Sheet Exceli malli saate alla laadida siit - VBA Protect Sheet Exceli mall

VBA kaitseleht - näide nr 1

Oletame, et meil on töövihikus nimega „VBA Protect Sheet” leht „näide 1”. Soovime, et see leht oleks parooliga kaitstud. Selleks toimige järgmiselt.

1. samm: sisestage uus moodul Visual Basic Editori (VBE). Klõpsake nupul Lisa > valige moodul .

2. samm: määrake moodulis uus alaprotseduur.

Kood:

 Alamnäide_1 () lõpp alam 

3. samm: nüüd peame kasutama funktsiooni Kaitse, mida saab rakendada töölehel nimega objekt. Käivitage kood objektiga Töölehed ja tippige sulgudesse töölehe nimi, mida soovite kaitsta.

Kood:

 Alamnäide_1 () töölehed ("Näide 1") Lõpp Alam 

4. samm: pange pärast sulgude sulgemist punkt ja kasutage nuppu Kaitse märksõna, mis käivitab lehe „ Näide 1 “ kaitsmise protsessi.

Kood:

 Alamnäide_1 () töölehed ("Näide 1"). Kaitske alammenüüd 

Lehe kaitsmise ajal saate siin peatuda. Kuna kõik argumendid on valikulised, on teie leht ikkagi kaitstud, kuid ei küsi kasutajalt enne redigeerimist parooli sisestamist ja see on sama kui kaitsmata leht. Kindlasti ei tahaks seda nii. Seetõttu lisage selle lehe kaitsmiseks järgmises etapis tugev parool.

5. samm. Sisestage märksõna Parool ja selle lehe kaitsmiseks kasutage tugevat parooli.

Kood:

 Alamnäide_1 () töölehed ("Näide 1"). Kaitse salasõna: = " " Lõpetage alam 

Me kasutame ainult funktsiooni esimest argumenti, mida nimetatakse parooliks, ja ülejäänud argumentide puhul kasutame vaikimisi väärtusi.

6. samm: see on see, saate selle koodi käivitada, vajutades nuppu F5 või nuppu Käivita. Kui näete, et fail on nüüd kaitstud, küsib kasutaja parooli niipea, kui ta proovib mõnda lahtrit redigeerida.

Nii kaitseme lehte VBA Protect abil.

VBA kaitseleht - näide nr 2

Nüüd tahame kaitsta kõiki töövihikus lehti. Selleks toimige järgmiselt.

1. samm: määrake moodulis alamprotseduur.

Kood:

 Alamnäide_2 () lõpp alam 

2. samm: määrake uus muutuja töölehena, kasutades funktsiooni Dim.

Kood:

 Alamnäide_2 () Tühjenda wrk_sht Töölehe lõiguna Alam 

3. samm: alustage For-silmuse jaoks. See silmus peaks kestma kuni aktiivse töövihiku viimase tööleheni.

Kood:

 Alamnäide_2 () Tühjenda wrk_sht töölehena iga wrk_sht-i jaoks ActiveWorkbook.Worksheets End Sub 

See koodirida valib aktiivse töövihiku iga töölehe ja salvestab selle muutuja wrk_sht alla iga silmuse kordamise jaoks. Loop lõpeb kohe, kui töövihiku viimane leht on valitud ja salvestatud muutujasse wrk_sht. Peame määratlema selle silmuse toimingu. Kindlasti kaitseb leht lehte parooliga.

4. samm. Nüüd kasutage funktsiooni Kaitsmine, et kaitsta lehti muutuja wrk_sht all iga For-silmuse korduse korral.

Kood:

 Alamnäide_2 () Tühjenda wrk_sht töölehena ActiveWorkbook.Worksheets iga wrk_sht töölehena. Töökaardid wrk_sht.Kaitse salasõna: = " " Lõpeta alam 

5. samm: kasutage käsku Järgmine, see võimaldab silmust töötada kuni iga tööleht on kaitstud.

Kood:

 Alamnäide_2 () Tühjenda wrk_sht töölehena ActiveWorkbook.Worksheets iga wrk_sht töölehena. Töökaardid wrk_sht.Kaitse salasõna: = " " Järgmine lõpp 

Kui kasutate seda koodi, on aktiivse töövihiku iga tööleht parooliga kaitstud ja peate selle sisestama iga kord, kui soovite lehti redigeerida.

Asjad, mida meeles pidada

  • Lehe kaitsmisel on soovitatav kasutada parooli. Vastasel juhul ei küsita kasutajal parooli sisestamist ja ta saab faili otse redigeerida, kuigi olete seda kaitsnud.
  • Parool on soovitatav meelde jätta. Vastasel juhul ei lase selle unustamine kunagi faili redigeerida. Parooli kaotamisel peate võib-olla läbima erinevad meetodid ja need meetodid jäävad selle artikli reguleerimisalast välja.

Soovitatavad artiklid

See on VBA kaitselehe juhend. Siin arutleme, kuidas kaitsta või lukustada lehed Exceli funktsiooni VBA Protect abil koos praktiliste näidete ja allalaaditava excelimalliga. Võite vaadata ka meie teisi soovitatud artikleid -

  1. Kuidas nimetada leht Exceli VBA-s ümber?
  2. Exceli lehe kaitse eemaldamise sammud
  3. VBA aktiveeri leht (näited Exceli malliga)
  4. Kuidas kopeerida Exceli lehte?

Kategooria: