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

Excel is beveiligd, cellen zijn geblokkeerd maar toch bewerkbaar

GeSwi

Gebruiker
Lid geworden
18 mrt 2025
Berichten
28
Hallo allen,

Hopelijk weten jullie voor mij de oplossing :)
Ik heb een Excel gemaakt en daarin cellen geblokkeerd die niet bewerkt mogen worden zodra ik een macro "beveiligen alles" laat draaien. Bij alle cellen lijkt dit goed te gaan op 3 cellen na. Weet iemand de oplossing? Vinkje uit en opnieuw aan heb ik al tig keer geprobeerd :)


---

vinkje geblokkeerd is aan bij de betreffende cellen:

1782655826025.webp

---

en de macro's:

Sub BeveiligOpheffenAlles()
Dim ws As Worksheet
Dim ps As String
ps = InputBox("xxxx", vbOKCancel)
For Each ws In ActiveWorkbook.Worksheets
ws.Unprotect Password:=ps
Next ws
End Sub

Sub BeveiligAlles()
Dim ws As Worksheet
Dim ps As String
ps = InputBox("xxxx", vbOKCancel)
For Each ws In ActiveWorkbook.Worksheets
ws.Protect Password:=ps, DrawingObjects:=True, Contents:=True, Scenarios:=True, AllowFiltering:=True
Next ws
End Sub


--
Deze melding krijg ik dus bij alle cellen op 3 cellen na en die zou ik graag ook in die 3 cellen krijgen..

1782655942845.webp


Alvast bedankt!
 
En die drie cellen heb je per stuk bekeken of ze inderdaad op Geblokkeerd staan?
 
Ja, het betreft meerdere tabbladen en in meerdere tabbladen zijn de cellen geblokkeerd.
Ik heb ze wel geblokkeerd door alle tabbladen te selecteren dan dan de cellen op geblokkeerd te zetten. Zou dat invloed kunnen hebben?
 
Daar heb je dan niet die macro's voor gebruikt?
Staan die cellen toevallig hier in?

1782671887348.webp
 
Yes! Daar staat hij bij idd. Dat is de oorzaak!
Veel dank!

Weet je toevallig ook of je deze instelling voor meerdere werkbladen tegelijkertijd kunt wijzigen? Of moet dat 1 voor 1?
 
Ik heb het nog nooit gebruikt, maar je kan zoiets proberen:
Code:
Sub VerwijderEditRanges()
    For Each ws In ThisWorkbook.Sheets
        For i = 1 To ws.Protection.AllowEditRanges.Count
            ws.Protection.AllowEditRanges(i).Delete
        Next i
    Next ws
End Sub
 
Dank! Ik ga dit proberen
Heb jij enig idee hoe deze erin zijn gekomen? Ik heb dit, bij mijn weten, niet handmatig doorgevoerd.
 
Geen idee helaas.
 
Wat ik al zei, nog niet eerder gebruikt.
Doe het eens zo:
Code:
Sub VerwijderEditRanges()
    For Each ws In ThisWorkbook.Sheets
        ws.Activate
        For i = ws.Protection.AllowEditRanges.Count To 1 Step -1
            ws.Protection.AllowEditRanges(i).Delete
        Next i
    Next ws
End Sub
 
Als ik die code zo bekijk zou ik eerder een foutmelding verwachten, maar niet dat Excel zou afsluiten; daar is vermoedelijk een andere reden voor (oudere Office-versie misschien?)
De 3° regel in de code zou je in elk geval moeten wijzigen naar:
Code:
For i = ws.Protection.AllowEditRanges.Count To 1 Step -1

Edit: oeps, edmoor was me één ogenblik voor...
 
Wel goed opgemerkt :)
 
Terug
Bovenaan Onderaan