Excel VBA Protect Sheet

Å beskytte et regneark er en viktig oppgave for de som jobber med Microsoft Excel veldig ofte. Det er en oppgave du trenger for å beskytte arket ditt mot å bli redigert av noen andre brukere. Anta at du sender en rapport til ledelsen, og deretter endrer ledelsen bevisst eller ved en feil parametrene eller verdiene gjennom rapporten. Det blir hektisk å identifisere feilen, samt at omarbeidingen er noe som bruker tiden din. For å få bukt med dette problemet er det alltid en god praksis å beskytte et ark / er for å bli redigert ved hjelp av et passord. Dette alternativet hjelper deg ved å ikke la brukeren gjøre noen endringer i arket. Du kan også dele passordet med personen som er ment, så vel som autorisert til å gjøre endringene. Selv om Excel har alternativet Beskytt regneark i det gjennom fliken Gjennomgang som er til stede i Excel-båndet, blir det hektisk når du har mer enn ett ark å beskytte. Det vil bruke rikelig med tiden din på å beskytte hvert ark ett etter ett. I stedet er det en god praksis å skrive en VBA-kode som kan beskytte enten enkelt- eller flere ark fra arbeidsboka for redigering.

Syntaks for VBA Protect Sheet

Denne innebygde VBA-funksjonen tilknyttet regneark, lar deg beskytte arket ved hjelp av passord. Syntaks for VBA Protect Sheet-funksjonen er som nedenfor:

Alle parametrene er valgfrie i denne funksjonen, som du kan gjette gjennom de firkantede parentesene som er nevnt for hver av dem.

  • Passord: Angir passord for arket. Hvis ikke oppgitt, vil arket beskyttes uten passord, og brukeren kan redigere det uten å bli bedt om et passord.
  • DrawingObjects: Valgfrie argumenter som lar deg beskytte forskjellige former på regnearket. Tar boolske verdier. Som standard satt til FALSE.
  • Innhold: Valgfritt argument. Beskytter alle objekter. Som standard er verdiene satt til SANN.
  • Scenarier: Beskytter alle forskjellige scenarier. Standardverdien er satt til SANN.
  • UserInterfaceOnly: Det beskytter brukergrensesnittet, men ikke makroene. Standardverdien er SANN hvis makroen blir ignorert, i tillegg til at brukergrensesnittet vil være beskyttet.
  • AllowFormattingCells: Standardverdien er FALSE på grunn av hvilken bruker ikke kan formatere cellene på arket. Hvis satt TRUE, kan brukeren formatere cellene fra arket.
  • AllowInsertingColonner: Standardverdi satt til FALSE. Hvis satt TRUE, kan brukeren sette inn en kolonne i arket.
  • AllowInsertingRows: Standardverdien er satt til FALSE. Hvis satt TRUE, kan brukeren sette rader i arket.
  • AllowInsertingHyperlinks: Standardverdien er satt til FALSE. Hvis satt TRUE, kan brukeren sette inn hyperkoblinger i arket.
  • AllowDeletingColonner: Standardverdien er satt til FALSE. Hvis satt TRUE, kan brukeren slette hvilken som helst kolonne fra arket.
  • AllowDeletingRows: Standardverdien er satt til FALSE. Hvis satt TRUE, kan brukeren slette et hvilket som helst antall rader fra arket.
  • AllowSorting: Standardverdien er satt til FALSE. Hvis satt TRUE, kan brukeren sortere dataene som er til stede i arket.
  • AllowFiltering: Standardverdien er satt til FALSE. Hvis satt TRUE, kan brukeren filtrere dataene som er tilstede i arket.
  • AllowUsingPivotTables: Standardverdien er satt til FALSE. Hvis satt TRUE, kan brukeren bruke og endre pivottabellene.

Hvordan beskytte ark i Excel VBA?

Nedenfor er de forskjellige eksemplene for å beskytte arket i Excel ved hjelp av VBA Protect.

Du kan laste ned denne VBA Protect Sheet Excel Template her - VBA Protect Sheet Excel Template

VBA Protect Sheet - Eksempel nr. 1

Anta at vi har et ark som heter “Eksempel 1” i en arbeidsbok som heter “VBA Protect Sheet”. Vi ønsker at dette arket skal beskyttes med et passord. Følg trinnene nedenfor for å gjøre dette:

Trinn 1: Sett inn en ny modul i Visual Basic Editor (VBE). Klikk på Sett inn > velg Modul .

Trinn 2: Definer en ny delprosedyre i modulen.

Kode:

 Undereksempel_1 () Slutt sub 

Trinn 3: Nå må vi bruke Protect-funksjonen som kan brukes på et objekt som heter Worksheet. Start koden med Worksheets- objekt, og skriv inn navnet på et regneark i parentes som du vil beskyttes.

Kode:

 Undereksempel_1 () Arbeidsark ("Eksempel 1") Slutt sub 

Trinn 4: Nå, sett en prikk etter de lukkede parentesene og bruk Beskytt nøkkelord som starter prosessen med å beskytte arket som heter “ Eksempel 1 ”.

Kode:

 Undereksempel_1 () Arbeidsark ("Eksempel 1"). Beskytt sluttund 

Du kan stoppe her mens du beskytter et ark. Ettersom alle argumentene er valgfrie, vil arket ditt fortsatt være beskyttet, men vil ikke be brukeren om å legge inn passordet før redigering, og vil være det samme som et ubeskyttet ark. Du vil helt sikkert ikke ønske det på denne måten. Legg derfor til et sterkt passord for å beskytte dette arket i neste trinn.

Trinn 5: Angi nøkkelord for passord og bruk et sterkt passord for å beskytte dette arket.

Kode:

 Undereksempel_1 () Arbeidsark ("Eksempel 1"). Beskytt passord: = " " Slutt sub 

Vi bruker bare det første argumentet for funksjonen som kalles passord, og for hvile vil alle argumenter gå med standardverdiene.

Trinn 6: Dette er det, du kan kjøre denne koden ved å trykke på F5 eller Run-knappen og kan se at filen nå er beskyttet og vil be brukeren om passordet så snart han / hun prøver å redigere noen av cellene.

Slik beskytter vi et ark ved hjelp av VBA Protect-funksjonen.

VBA Protect Sheet - Eksempel # 2

Nå ønsker vi å beskytte alle arkene som finnes i en arbeidsbok. Følg trinnene nedenfor for å gjøre dette:

Trinn 1: Definer en delprosedyre i modulen.

Kode:

 Undereksempel_2 () Slutt sub 

Trinn 2: Definer en ny variabel som arbeidsark ved å bruke Dim.

Kode:

 Undereksempel_2 () Dim wrk_sht Som regneark Slutt sub 

Trinn 3: Start en For-loop. Denne sløyfen skal kjøres til siste arbeidsark i Active Workbook.

Kode:

 Undereksempel_2 () Dim wrk_sht som regneark for hvert wrk_sht i ActiveWorkbook.Worksheets End Sub 

Denne kodelinjen velger hvert arbeidsark i den aktive arbeidsboken og lagrer det under variabel wrk_sht for hver iterasjon av løkken. Loop slutter så snart det siste arket i arbeidsboken er valgt og lagret i variabelen wrk_sht. Vi må definere en operasjon for denne sløyfen. Det vil sikkert beskytte arket ved hjelp av et passord.

Trinn 4: Nå bruker du Beskytt-funksjonen for å beskytte arkene som blir lagret under wrk_sht- variabelen for hver iterasjon av For-loop.

Kode:

 Undereksempel_2 () Dim wrk_sht som regneark for hvert wrk_sht i ActiveWorkbook.Worksheets wrk_sht.Protect Password: = " protection " End Sub 

Trinn 5: Bruk Next- setningen, den lar loopen løpe til hvert regneark blir beskyttet.

Kode:

 Undereksempel_2 () Dim wrk_sht som arbeidsark for hvert wrk_sht i ActiveWorkbook.Worksheets wrk_sht.Protect Password: = " protection " Next End Sub 

Hvis du kjører denne koden, vil hvert arbeidsark i den aktive arbeidsboken beskyttes med passord, og du må legge den inn hver gang du vil redigere arkene.

Ting å huske

  • Det anbefales å bruke et passord mens du beskytter et ark. Ellers blir ikke brukeren bedt om å legge inn et passord og kan redigere filen direkte selv om du har beskyttet den.
  • Det anbefales å huske passordet. Ellers vil glemme av det aldri aldri tillate deg å redigere filen. Det kan hende du må gå gjennom de forskjellige metodene hvis du mister passordet og disse metodene er utenfor omfanget av denne artikkelen.

Anbefalte artikler

Dette er en guide til VBA Protect Sheet. Her diskuterer vi hvordan du kan beskytte eller låse ark ved hjelp av VBA Protect-funksjon i Excel sammen med praktiske eksempler og nedlastbar Excel-mal. Du kan også gå gjennom andre foreslåtte artikler -

  1. Hvordan endre navn på arket i Excel VBA?
  2. Trinn for å fjerne beskyttelse av ark i Excel
  3. VBA Activate Sheet (eksempler med Excel-mal)
  4. Hvordan kopiere et Excel-ark?

Kategori: