Excel VBA-beveiligingsblad

Het beschermen van een werkblad is een belangrijke taak voor degenen die heel vaak met Microsoft Excel werken. Het is een taak die u nodig hebt om uw blad te beschermen tegen bewerking door een andere gebruiker. Stel dat u een rapport naar het management stuurt en dat het management willens en wetens de parameters of waarden door het rapport wijzigt. Het wordt hectisch om de bug te identificeren en tegelijkertijd is het herwerken iets dat je tijd kost. Om dit probleem te verhelpen, is het altijd een goede gewoonte om een ​​sheet / s te beschermen voor bewerking met een wachtwoord. Deze optie helpt u door een gebruiker niet toe te staan ​​om wijzigingen aan te brengen in de sheet / s. U kunt het wachtwoord ook delen met de persoon die is bedoeld en geautoriseerd om de wijzigingen aan te brengen. Hoewel Excel de optie Werkblad beveiligen bevat via het tabblad Controleren op het Excel-lint, wordt het hectisch wanneer u meer dan één blad hebt om te beschermen. Het kost veel tijd om elk vel een voor een te beschermen. In plaats daarvan is het een goede gewoonte om een ​​VBA-code te schrijven die een of meerdere bladen van uw werkmap kan beschermen tegen bewerking.

Syntaxis van VBA Protect Sheet

Met deze ingebouwde VBA-functie die is gekoppeld aan het werkblad, kunt u het blad beveiligen met behulp van een wachtwoord. De syntaxis voor de VBA Protect Sheet-functie is als volgt:

Alle parameters zijn optioneel in deze functie, die u kunt raden aan de hand van de vierkante haakjes die voor elk ervan worden vermeld.

  • Wachtwoord: geeft het wachtwoord voor het blad op. Indien niet opgegeven, wordt het blad beveiligd zonder wachtwoord en kan de gebruiker het bewerken zonder om een ​​wachtwoord te worden gevraagd.
  • DrawingObjects: Optionele argumenten waarmee u verschillende vormen van het werkblad kunt beveiligen. Neemt Booleaanse waarden. Standaard ingesteld op FALSE.
  • Inhoud: Optioneel argument. Beschermt alle objecten. Standaard is de waarde ingesteld op WAAR.
  • Scenario's: beschermt alle verschillende scenario's. Standaardwaarde is ingesteld op WAAR.
  • UserInterfaceOnly: het beschermt de gebruikersinterface maar niet de macro's. De standaardwaarde is TRUE als de macro wordt genegeerd en de gebruikersinterface wordt beveiligd.
  • AllowFormattingCells: standaardwaarde is ingesteld op FALSE waardoor de gebruiker de cellen van het blad niet kan opmaken. Indien ingesteld op WAAR, kan de gebruiker de cellen van het blad opmaken.
  • AllowInsertingColumns: standaardwaarde ingesteld op FALSE. Indien ingesteld op WAAR, kan de gebruiker een kolom in het blad invoegen.
  • AllowInsertingRows: standaardwaarde is ingesteld op FALSE. Indien ingesteld op WAAR, kan de gebruiker rijen in het blad invoegen.
  • AllowInsertingHyperlinks: standaardwaarde is ingesteld op FALSE. Indien ingesteld op WAAR, kan de gebruiker hyperlinks in het blad invoegen.
  • AllowDeletingColumns: standaardwaarde is ingesteld op FALSE. Indien ingesteld op WAAR, kan de gebruiker elke kolom uit het blad verwijderen.
  • AllowDeletingRows: standaardwaarde is ingesteld op FALSE. Indien ingesteld op WAAR, kan de gebruiker een willekeurig aantal rijen van het blad verwijderen.
  • AllowSorting: standaardwaarde is ingesteld op FALSE. Indien ingesteld op WAAR, kan de gebruiker de gegevens in het blad sorteren.
  • AllowFiltering: standaardwaarde is ingesteld op FALSE. Indien ingesteld op WAAR, kan de gebruiker de gegevens in het blad filteren.
  • AllowUsingPivotTables: standaardwaarde is ingesteld op FALSE. Indien ingesteld op WAAR, kan de gebruiker de draaitabellen gebruiken en wijzigen.

Hoe blad te beschermen in Excel VBA?

Hieronder staan ​​de verschillende voorbeelden om het blad in Excel te beschermen met VBA Protect.

U kunt deze VBA Protect Sheet Excel Template hier downloaden - VBA Protect Sheet Excel Template

VBA Protect Sheet - Voorbeeld # 1

Stel dat we een blad met de naam "Voorbeeld 1" hebben in een werkmap met de naam "VBA Protect Sheet". We willen dat dit blad met een wachtwoord wordt beveiligd. Volg hiervoor de onderstaande stappen:

Stap 1: Voeg een nieuwe module in Visual Basic Editor (VBE) in. Klik op Invoegen > selecteer Module .

Stap 2: Definieer een nieuwe subprocedure binnen de module.

Code:

 Sub Voorbeeld_1 () Einde Sub 

Stap 3: Nu moeten we de beveiligingsfunctie gebruiken die op een object met de naam Werkblad kan worden toegepast. Begin de code met Worksheets- object en typ de naam van een werkblad tussen haakjes die u wilt beveiligen.

Code:

 Sub Voorbeeld_1 () Werkbladen ("Voorbeeld 1") Einde Sub 

Stap 4: Plaats nu een punt achter de haakjes sluiten en gebruik het sleutelwoord Beschermen dat het proces van het beschermen van het blad met de naam " Voorbeeld 1 " initieert.

Code:

 Sub Voorbeeld_1 () Werkbladen ("Voorbeeld 1"). Bescherm einde Sub 

Je kunt hier stoppen terwijl je een blad beschermt. Omdat alle argumenten optioneel zijn, wordt uw blad nog steeds beschermd, maar wordt de gebruiker niet gevraagd om het wachtwoord in te voeren voordat het wordt bewerkt en is dit hetzelfde als een niet-beveiligd blad. Je zou het zeker niet op deze manier willen. Voeg daarom in de volgende stap een sterk wachtwoord toe om dit blad te beschermen.

Stap 5: Voer het wachtwoordwoord Wachtwoord in en gebruik een sterk wachtwoord om dit blad te beschermen.

Code:

 Sub Voorbeeld_1 () Werkbladen ("Voorbeeld 1"). Wachtwoord beveiligen: = " " Sub beëindigen 

We zullen alleen het eerste argument van de functie gebruiken die wordt genoemd als wachtwoord en voor alle overige argumenten gaan we met de standaardwaarden.

Stap 6: Dit is het, u kunt deze code uitvoeren door op F5 of de knop Uitvoeren te drukken en u kunt zien dat het bestand nu is beveiligd en de gebruiker het wachtwoord vraagt ​​zodra hij / zij probeert een van de cellen te bewerken.

Dit is hoe we een blad beschermen met de VBA Protect-functie.

VBA Protect Sheet - Voorbeeld # 2

Nu willen we alle bladen in een werkmap beschermen. Volg hiervoor de onderstaande stappen:

Stap 1: Definieer een subprocedure in de module.

Code:

 Sub Voorbeeld_2 () Einde Sub 

Stap 2: Definieer een nieuwe variabele als werkblad met behulp van Dim.

Code:

 Sub Voorbeeld_2 () Dim wrk_sht Als werkblad Einde Sub 

Stap 3: Start een For-lus. Deze lus zou moeten lopen tot het laatste werkblad van Active Workbook.

Code:

 Sub Voorbeeld_2 () Dim wrk_sht als werkblad voor elke wrk_sht in ActiveWorkbook.Worksheets End Sub 

Deze coderegel selecteert elk werkblad van de actieve werkmap en slaat het op onder variabele wrk_sht voor elke iteratie van de lus. De lus eindigt zodra het laatste blad van de werkmap is geselecteerd en opgeslagen in de variabele wrk_sht. We moeten een bewerking definiëren voor deze lus. Het zal het blad zeker beschermen met een wachtwoord.

Stap 4: Gebruik nu de beveiligingsfunctie om de bladen te beschermen die worden opgeslagen onder de variabele wrk_sht voor elke iteratie van de For-lus.

Code:

 Sub Voorbeeld_2 () Dim wrk_sht als werkblad voor elke wrk_sht in ActiveWorkbook.Worksheets wrk_sht.Protect Wachtwoord: = " " End Sub 

Stap 5: Gebruik de volgende instructie, hiermee kan de lus worden uitgevoerd totdat elk werkblad wordt beveiligd.

Code:

 Sub Voorbeeld_2 () Dim wrk_sht als werkblad voor elke wrk_sht in ActiveWorkbook.Worksheets wrk_sht.Protect Wachtwoord: = " " Next End Sub 

Als u deze code uitvoert, wordt elk werkblad van de actieve werkmap beveiligd met een wachtwoord en moet u het elke keer invoeren als u de bladen wilt bewerken.

Dingen om te onthouden

  • Het wordt aanbevolen om een ​​wachtwoord te gebruiken terwijl u een blad beschermt. Anders wordt de gebruiker niet gevraagd om een ​​wachtwoord in te voeren en kan het bestand direct worden bewerkt hoewel u het hebt beveiligd.
  • Het wordt aanbevolen om het wachtwoord te onthouden. Anders kunt u nooit hetzelfde bestand vergeten door hetzelfde te vergeten. Mogelijk moet u de verschillende methoden doorlopen als u het wachtwoord verliest en die methoden vallen buiten het bestek van dit artikel.

Aanbevolen artikelen

Dit is een handleiding voor VBA Protect Sheet. Hier bespreken we hoe u bladen kunt beschermen of vergrendelen met de VBA Protect-functie in Excel, samen met praktische voorbeelden en een downloadbare Excel-sjabloon. U kunt ook onze andere voorgestelde artikelen doornemen -

  1. Hoe het bladnaam te wijzigen in Excel VBA?
  2. Stappen om de beveiliging van het blad op te heffen in Excel
  3. VBA-activeringsblad (voorbeelden met Excel-sjabloon)
  4. Hoe een Excel-blad te kopiëren?

Categorie: