VBA zaščitni list - Zaščitite Excel z geslom z uporabo VBA

Zaščitni list Excel VBA

Excelov list lahko zaščitimo s kodo vba, ki uporabniku ne omogoča spreminjanja podatkov delovnega lista, vse, kar lahko naredijo, je samo prebrati poročilo. Za to imamo vgrajeno metodo vba, imenovano "Protect".

Kot zaščitimo svoje delovne liste v Excelu, podobno lahko uporabimo tudi VBA za zaščito svojih delovnih listov, in sicer z izjavo .protect, obstajata dva načina za zaščito lista, en je z geslom, drugi pa brez gesla, sintaksa pa delovni list je naslednji Delovni listi (). Zaščitite geslo.

Končno končno poročilo običajno delimo z uporabnikom ali bralcem. Ko končno poročilo delimo z uporabnikom, želimo, da uporabnik ne bo spreminjal končnega poročila ali manipuliral z njim. V takem scenariju gre predvsem za zaupanje, kajne?

Sintaksa

Zaščitna folija vključuje različne parametre za oskrbo. To je v nasprotju z odstranjevanjem zaščite lista. Poglejmo sintakso metode Protect z geslom.

Vau !!! Naj vas ne ustraši pogled na skladnjo. Oglejte si razlago vsakega argumenta spodaj.

  • Ime delovnega lista: Najprej moramo omeniti, kateri delovni list bomo zaščitili.
  • Geslo: Vnesti moramo geslo, ki ga uporabljamo za zaščito. Če tega parametra prezremo, bo excel zaklenil list brez gesla, medtem ko bo zaščitil list, se bo zaščitil, ne da bi zahteval geslo.
  • Opomba: Zapomnite si geslo, ki ga vnesete, kajti če ste pozabili, morate iti na različne težke načine.
  • Risanje predmeta: Če želite zaščititi predmete na delovnem listu, lahko argument posredujete kot TRUE ali FALSE. Privzeta vrednost je TRUE.
  • Vsebina: Če želite zaščititi vsebino delovnega lista, nastavite parameter na TRUE ali sicer FALSE. Privzeta vrednost je FALSE. Tako boste zaščitili samo zaklenjene celice. Privzeta vrednost je TRUE.
  • Scenariji: če v excel scenarijih obstaja kakšna analiza, če jih lahko zaščitimo. Za zaščito TRUE ali FALSE. Privzeta vrednost je TRUE.
  • Samo uporabniški vmesnik: če želite zaščititi uporabniški vmesnik, ki ni makro, mora biti TRUE. Če je ta argument izpuščen, bo zaščitil makre in uporabniški vmesnik. Če argument nastavite na TRUE, bo zaščitil samo uporabniški vmesnik. Privzeta vrednost je FALSE.
  • Dovoli oblikovanje celic: če želite uporabniku dovoliti formatiranje celice, lahko parameter nastavite na TRUE ali FALSE. Privzeta vrednost je FALSE.
  • Dovoli oblikovanje stolpcev: če želite uporabniku dovoliti formatiranje katerega koli stolpca na zaščitenem listu, lahko parameter nastavite na TRUE ali FALSE. Privzeta vrednost je FALSE.
  • Dovoli oblikovanje vrstic: če želite uporabniku dovoliti formatiranje katere koli vrstice na zaščitenem listu, lahko parameter nastavite na TRUE ali FALSE. Privzeta vrednost je FALSE.
  • Dovoli vstavljanje stolpcev v VBA: želite uporabniku dovoliti vstavljanje novih stolpcev, potem morate to nastaviti na TRUE. Privzeta vrednost je FALSE.
  • Dovoli vstavljanje vrstic: če želite uporabniku dovoliti vstavljanje novih vrstic, morate to nastaviti na TRUE. Privzeta vrednost je FALSE.
  • Dovoli vstavljanje hiperpovezav: če želite uporabniku dovoliti vstavljanje hiperpovezav, morate to nastaviti na TRUE. Privzeta vrednost je FALSE.
  • Dovoli brisanje stolpcev: če želite uporabniku dovoliti brisanje stolpcev v VBA, morate to nastaviti na TRUE. Privzeta vrednost je FALSE.
  • Dovoli brisanje vrstic: če želite uporabniku dovoliti brisanje vrstic, morate to nastaviti na TRUE. Privzeta vrednost je FALSE.
  • Dovoli razvrščanje: če želite uporabniku dovoliti razvrščanje podatkov, morate to nastaviti na TRUE. Privzeta vrednost je FALSE.
  • Dovoli filtriranje: če želite uporabniku dovoliti filtriranje podatkov, morate to nastaviti na TRUE. Privzeta vrednost je FALSE.
  • Dovoli uporabo vrtilnih tabel: če želite uporabniku dovoliti uporabo vrtilnih tabel, morate to nastaviti na TRUE. Privzeta vrednost je FALSE.

Kako zaščititi list s kodo VBA?

1. korak: Izberite list, ki ga je treba zaščititi

Za zaščito lista je prvi korak odločitev, kateri list moramo zaščititi z geslom, list pa moramo poklicati z njegovim imenom z uporabo predmeta VBA Worksheet Object.

Denimo, da želite zaščititi list z imenom »Glavni list«, potem morate omeniti ime delovnega lista, kot je spodaj.

2. korak: Določite spremenljivko delovnega lista

Po omembi imena delovnega lista postavite piko, vendar ne vidimo nobenega seznama IntelliSense, s katerim bi lahko delali. To otežuje delo. Za dostop do seznama IntelliSense definira spremenljivko kot delovni list.

Koda:

Sub Protect_Example1 () Dim Ws as Worksheet End Sub

3. korak: Navedite sklic na delovni list

Zdaj nastavite sklic na delovni list na spremenljivko kot Delovni listi (»Glavni list«) .

Koda:

Sub Protect_Example1 () Dim Ws As Worksheet Set Ws = Worksheets ("Master Sheet") End Sub

Zdaj spremenljivka "Ws" vsebuje sklic na delovni list z imenom "Glavni list". Z uporabo te spremenljivke lahko dostopamo do seznama IntelliSense.

4. korak: Izberite način zaščite

Na seznamu IntelliSense izberite metodo »Protect«.

5. korak: Vnesite geslo

Geslo določite v dvojnih narekovajih.

Koda:

Sub Protect_Example1 () Dim Ws As Worksheet Set Ws = Worksheets ("Master Sheet") Ws.Protect Password: = "MyPassword" End Sub

6. korak: zaženite kodo

Zaženite kodo ročno ali s pomočjo bližnjične tipke F5, nato pa bo zaščitila list z imenom »Glavni list«.

Če je list zaščiten, če želimo kaj spremeniti, se prikaže sporočilo o napaki, kot je prikazano spodaj.

Če želite zaščititi več kot en list, moramo uporabiti zanke. Spodaj je primer kode za zaščito lista.

Sub Protect_Example2 () Zatemni W kot delovni list za vsak W v ActiveWorkbook. Delovni listi Ws.Protect Password: = "My Passw0rd" Next Ws End Sub

Opomba: Za eksperimentiranje uporabite druge parametre.

Zanimive Članki...