• Privacywetgeving
    Het is bij Helpmij.nl niet toegestaan om persoonsgegevens in een voorbeeld te plaatsen. Alle voorbeelden die persoonsgegevens bevatten zullen zonder opgaaf van reden verwijderd worden. In de vraag zal specifiek vermeld moeten worden dat het om fictieve namen gaat.

Opgelost Blad beveiliging instellingen en wachtwoord samenvoegen

Dit topic is als opgelost gemarkeerd
Status
Niet open voor verdere reacties.

PietPeter

Gebruiker
Lid geworden
20 dec 2024
Berichten
11
Goedendag,

Ik heb twee codes met aan het einde (na 'End If, Next cel') een andere functie en ze werken beiden afzonderlijk zoals het hoort. Alleen wil ik dit samengevoegd hebben maar dit krijg ik met geen mogelijkheid werkend, omdat daarbij (afhankelijk van welke functie als eerste wordt benoemd) de functie van de andere komt te vervallen.

Het gaat om onderstaande code die ervoor zorgt dat het werkblad met een wachtwoord wordt beveiligd.

Code:
Private Sub Worksheet_Calculate()
    Dim cel As Range
    ' Controleer of de cellen in rij 87 (D87:APX87) gewijzigd zijn
    For Each cel In Me.Range("D87:APX87")
        ' Als de waarde van de cel in rij 87 een 1 is, blokkeer de corresponderende cellen in rij 4, 5, 7 en 8
        If cel.Value = 1 Then
            Me.Unprotect Password:="jouwWachtwoord"  ' Bescherm de werkmap met een wachtwoord
            ' Blokkeer de cel in rij 6
            cel.Offset(-81).Locked = True
            ' Blokkeer de cel in rij 7
            cel.Offset(-80).Locked = True
            ' Blokkeer de cel in rij 9
            cel.Offset(-78).Locked = True
            ' Blokkeer de cel in rij 10
            cel.Offset(-77).Locked = True
        ' Als de waarde van de cel in rij 87 een 0 is, deblokkeer de corresponderende cellen in rij 4, 5, 7 en 8
        ElseIf cel.Value = 0 Then
            Me.Unprotect Password:="jouwWachtwoord"  ' Bescherm de werkmap met een wachtwoord
            ' Deblokkeer de cel in rij 6
            cel.Offset(-81).Locked = False
            ' Deblokkeer de cel in rij 7
            cel.Offset(-80).Locked = False
            ' Deblokkeer de cel in rij 9
            cel.Offset(-78).Locked = False
            ' Deblokkeer de cel in rij 10
            cel.Offset(-77).Locked = False
        End If
    Next cel
   
    ' Werkmap beschermen met wachtwoord
    Me.Protect Password:="jouwWachtwoord"
End Sub

En het gaat om onderstaande code die ervoor zorgt dat bij de instellingen van het beveiligen de juiste vinkjes (Naast vergrendelde cellen selecteren en ontgrendelde cellen selecteren, ook kolommen opmaken, objecten bewerken en scenarios bewerken) worden aangezet.

Code:
Private Sub Worksheet_Calculate()
    Dim cel As Range
    ' Controleer of de cellen in rij 87 (D87:APX87) gewijzigd zijn
    For Each cel In Me.Range("D87:APX87")
        ' Als de waarde van de cel in rij 87 een 1 is, blokkeer de corresponderende cellen in rij 4, 5, 7 en 8
        If cel.Value = 1 Then
            Me.Unprotect Password:="jouwWachtwoord"  ' Bescherm de werkmap met een wachtwoord
            ' Blokkeer de cel in rij 6
            cel.Offset(-81).Locked = True
            ' Blokkeer de cel in rij 7
            cel.Offset(-80).Locked = True
            ' Blokkeer de cel in rij 9
            cel.Offset(-78).Locked = True
            ' Blokkeer de cel in rij 10
            cel.Offset(-77).Locked = True
        ' Als de waarde van de cel in rij 87 een 0 is, deblokkeer de corresponderende cellen in rij 4, 5, 7 en 8
        ElseIf cel.Value = 0 Then
            Me.Unprotect Password:="jouwWachtwoord"  ' Bescherm de werkmap met een wachtwoord
            ' Deblokkeer de cel in rij 6
            cel.Offset(-81).Locked = False
            ' Deblokkeer de cel in rij 7
            cel.Offset(-80).Locked = False
            ' Deblokkeer de cel in rij 9
            cel.Offset(-78).Locked = False
            ' Deblokkeer de cel in rij 10
            cel.Offset(-77).Locked = False
        End If
    Next cel
 
' Bescherm het werkblad opnieuw nadat de wijzigingen zijn doorgevoerd
ActiveSheet.Protect DrawingObjects:=False, Contents:=True, Scenarios:= _
        False, AllowFormattingColumns:=True
End Sub

Is het mogelijk om deze samen te voegen tot één werkende code zodat het blad wordt beveiligd met de juiste vinkjes én met een wachtwoord?

Alvast bedankt.

Piet Peter
 
Laatst bewerkt:
Zo:
Code:
ActiveSheet.Protect Password:="jouwWachtwoord", DrawingObjects:=False, Contents:=True, Scenarios:= _
        False, AllowFormattingColumns:=True
 
Status
Niet open voor verdere reacties.
Terug
Bovenaan Onderaan