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.
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.
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
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: