Excel VBA ubeskyttelsesark

Vi har en mulighed i Excel, som vi kan beskytte vores excel-ark og -filer fra at blive slettet, omdøbt og fra at gemme dataene fra andre ændringer, der ikke kræves. Indstillingen kaldes Protect Sheet and Protect Workbook, som er der i afsnittet Ændringer under menuen Gennemse menuen. Vi kan indstille en adgangskode, hvormed vi kan gemme det valgte ark fra eventuelle ændringer. Men hvad jeg siger, dette kan også automatiseres ved hjælp af VBA-kode. Ja, vi kan oprette en kode eller en makro, som vi automatisk kan låse arket og arbejdsbogen på. Men denne artikel handler om at beskytte arket.

Afbeskyttelse af arket er også en ganske let proces som at beskytte arket. For at afbeskytte arket skal vi indtaste den adgangskode, som vi brugte, mens arket låstes. For at beskytte arket skal vi blot vælge navnet på regnearket og funktionen kaldet Fjern beskyttelse . Hvis dette er tilgængeligt i VBA, er det bare en en-linjekode. Men hvis det ikke er det, er vi nødt til at kigge efter en anden måde at gøre det på, som vi vil se i nedenstående eksempler.

Sådan afbeskyttes ark i Excel VBA?

Vi lærer, hvordan man fjerner beskyttelsen af ​​ark i Excel ved hjælp af VBA-koden.

Du kan downloade denne VBA Unbeskyttelsesark Excel-skabelon her - VBA Ubeskyttelsesark Excel-skabelon

VBA Unprotect Sheet - Eksempel # 1

Først vil vi se et simpelt eksempel til at fjerne beskyttelsen af ​​arket. Følg nedenstående trin for dette:

Trin 1: Åbn først et modul fra fanen Indsæt menu som vist nedenfor.

Trin 2: Skriv nu underproceduren på VBA Unprotect-ark. Eller vi kan vælge ethvert andet navn til at definere det.

Kode:

 Sub VBA_Unprotect () End Sub 

Trin 3: Definer en variabel kaldet Arbejdsark med ethvert navn. Fortrinsvis navnet, der ligner regneark, såsom ExSheet

Kode:

 Sub VBA_Unprotect () Dim ExSheet Som regnearkets slutunderdel 

Trin 4: Indstil derefter den definerede regnearkvariabel med navnet på det ark, som vi vil fjerne beskyttelsen. Her er navnet på det ark Sheet1 .

Kode:

 Sub VBA_Unprotect () Dim ExSheet Som regneark Set ExSheet = Worksheets ("Sheet1") End Sub 

Trin 5: Tildel nu Unprotect- funktion, der er der i VBA-rullelisten, til regnearkvariablen ExSheet .

Kode:

 Sub VBA_Unprotect () Dim ExSheet As Worksheet Set ExSheet = Worksheets ("Sheet1") ExSheet.Unprotect End Sub 

Trin 6: Giv det adgangskode, som vi gav til låsning af det ark. Her er denne adgangskode “Open1212”. Og dette kan være alt, hvad der er op til brugerens valg.

Kode:

 Sub VBA_Unprotect () Dim ExSheet As Worksheet Set ExSheet = Worksheets ("Sheet1") ExSheet.Unprotect Password: = "Open1212" End Sub 

Trin 7: Nu beskytter vi først Ark1 ved at klikke på fanebladet Gennemgang og vælge Beskyttelse af ark .

Trin 8: Indtast det adgangskode, vi ønsker, og klik på Ok for at beskytte arket.

Trin 9: Indtast adgangskoden igen for at bekræfte.

Trin 10: Når det er gjort, ser vi, vi kan ikke ændre noget i det ark, selvom vi prøver at gøre det. For nu at fjerne beskyttelsen af ​​arket, samler vi vores skriftlige kode og kører det.

Vi vil se, når vores kode er udført, nu er vi i stand til at foretage ændringer i ark1 .

Trin 11: Hvad hvis vi fjerner eller ændrer kodelinjen, hvor vi har indsat adgangskoden, og gør den til funktionen Unprotect som vist nedenfor. Lad os se, hvad der vil ske, hvis vi gør det.

Kode:

 Sub VBA_Unprotect () Dim ExSheet As Worksheet Set ExSheet = Worksheets ("Sheet1") ExSheet.Unprotect End Sub 

Trin 12: Kør nu igen den komplette kode. Vi ser, der vises en meddelelsesboks, der beder om at indtaste adgangskoden. Indtast adgangskoden her, som vi har valgt, mens du beskytter arket, og klik på Ok.

Med denne proces kan vi også fjerne beskyttelsen af ​​det ønskede ark.

VBA Unprotect Sheet - Eksempel # 2

Der er en anden måde at afbeskytte regneark på. Dette er den nemmeste og enkleste måde at gøre det på. Følg nedenstående trin for dette:

Trin 1: Skriv underproceduren for VBA Unprotect som vist nedenfor.

Kode:

 Sub VBA_Unprotect2 () End Sub 

Trin 2: Brug Worksheets-funktionen og vælg det ark, som vi vil fjerne beskyttelsen. Også her er arket Ark1 .

Kode:

 Sub VBA_Unprotect2 () Worksheets ("Sheet1") End Sub 

Trin 3: På en lignende måde som vist i eksempel-1 vil vi bruge Unprotect-kommandoen sammen med det kodeord, som vi brugte, mens arket låstes. Her er vores adgangskode til afbeskyttelse også det samme som “ Open1212 ”.

Kode:

 Sub VBA_Unprotect2 () Worksheets ("Sheet1"). Unprotect Password: = "Open1212" End Sub 

Nu er vores kode afsluttet. For at teste dette skal du først beskytte arket på samme måde som vi gjorde i eksempel 1 og køre denne kode for at fjerne beskyttelsen.

VBA Unprotect Sheet - Eksempel # 3

Hvad hvis jeg siger, vi igen kan skrive en kode, hvor vi ikke behøver at vælge navnet på det ark, som vi vil fjerne beskyttelsen. Ja, dette kan gøres ved hjælp af en løkke. Følg nedenstående trin for dette:

Trin 1: Igen for dette åbne et modul og skriv underproceduren på VBA Unprotect-ark som vist nedenfor.

Kode:

 Sub VBA_Unprotect3 () End Sub 

Trin 2: Brug DIM til at definere en variabel til regneark som regneark. Det er den samme linje, som vi har brugt i ovenstående eksempler.

Kode:

 Sub VBA_Unprotect3 () Dim ExSheet Som regnearkets slutunderdel 

Trin 3: Åbn en For-Next-løkke, hvor vi skriver betingelserne for ubeskyttelse af ark.

Kode:

 Sub VBA_Unprotect3 () Dim ExSheet Som regneark til næste ExSheet End Sub 

Trin 4: Skriv betingelsen for hver åbnet aktiv arbejdsbog vælger det aktuelle aktive regneark som vist nedenfor.

Kode:

 Sub VBA_Unprotect3 () Dim ExSheet Som regneark for hvert ExSheet i ActiveWorkbook.Worksheets Next ExSheet End Sub 

Trin 5: Nu på en lignende måde, som det ses i ovenstående eksempler, vil vi bruge definerede variabler sammen med Unprotect-funktionen til at fjerne beskyttelsen af ​​arket. Også her bruger vi måske eller måske ikke adgangskoden. Dette er en valgfri måde.

Kode:

 Sub VBA_Unprotect3 () Dim ExSheet Som regneark for hvert ExSheet i ActiveWorkbook.Worksheets ExSheet.Unprotect Password: = "Open1212" Næste ExSheet End Sub 

Kompiler koden, og kør, hvis der ikke er fundet nogen fejl.

Sådan kan vi fjerne beskyttelsen af ​​alle åbne aktuelle regneark uden selv at vælge navnet og sekvensen på det. Denne kode overvejer automatisk det ark, der i øjeblikket er valgt og åbnet.

Fordele ved Excel VBA Unprotect Sheet

  • Ovenfor viste processer og eksempler er de nemmeste at anvende.
  • Vi kan fjerne beskyttelsen af ​​arket på begge måder ved at give selve adgangskoden i koden eller uden at give adgangskoden.
  • Dette fungerer på samme måde, som vi manuelt afbeskytter arket.

Ting at huske

  • Da processen er ret nem at implementere, så der muligvis ikke sker nogen forbedring ved at automatisere.
  • Vi kan ændre adgangskoden hver gang, når vi gentager processen med at beskytte og fjerne beskyttelsen af ​​arket.
  • Vi kan vælge navnet på arket eller sekvensen på arket, som vi vil fjerne beskyttelsen af.
  • Og når du er færdig, skal du gemme koden i makro aktivere excel-regneark for at beskytte VBA-koden ved at gå tabt.

Anbefalede artikler

Dette er en guide til VBA Unprotect Sheet. Her diskuterer vi, hvordan man afbeskytter ark i Excel ved hjælp af VBA-kode sammen med praktiske eksempler og downloadbar excel-skabelon. Du kan også gennemgå vores andre foreslåede artikler -

  1. VBA offentlig variabel (eksempler)
  2. VBA-formatnummer med funktion
  3. VBA-variant med datatyper
  4. VBA Randomize | Excel-skabeloner
  5. VBA-miljø

Kategori: