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

cellen : blokkering opheffen via macro

Status
Niet open voor verdere reacties.

marccram

Gebruiker
Lid geworden
20 dec 2015
Berichten
40
ik wil een spreadsheet beveiligen zodat niet alle cellen kunnen gewijzigd worden.
bijvoorbeeld : range A10 tot A15 is toegankelijk voor de gebruiker
en range C12 tot F15 is toegankelijk voor de gebruiker
de rest van de sheet mag niet gewijzigd worden

Ik weet dat je via de "celeigenschappen" de blokkering "weghaald
dan je sheet beveiligen met een passwoord
en enkel de cellen waarvoor de blokkering is weggehaald zijn toegankelijk voor de gebruiker.

In mijn echte sheet zijn dit natuurlijk meerdere cellen en ranges ( maar ik ga die nu niet allemaal vermelden )
Persoonlijk moet ik aan alle cellen kunnen ( maar dan haal ik het password er af )

Ik zou graag een macro willen met VBA coding :
1. coding voor een range aan te duiden
2. coding voor de blokkering (in celeigenschappen ) weg te halen


Dus als ik verschillende ranges heb in een spreadsheet
dan moet ik telkens de coding lijn 1 en 2 copieren
en in lijn 1 de range wijzigen ( bijv A10 tot A15 wordt C12 tot F12 )
etc ...

Op deze manier kan ik sneller werken en kan de macro ook in andere sheets gebruiken

Kan iemand mij hiermee helpen ?
 
En ik denk dat je toch tenminste een voorbeeldbestand dient te posten wil je een werkbaar antwoord krijgen.
 
Altijd lol dit maak voor voor mij forum. Je kan het beste als je maatwerk wil er niet bij vertellen wat je wil.

Bestudeer dit eens
Code:
Private Sub Workbook_Open()
If Environ("Username") = "mijn windows login" Then
    For Each sh In Sheets
        sh.Unprotect "mijnww"
    Next sh
End If
End Sub

Code:
Private Sub Workbook_BeforeClose(Cancel As Boolean)
If Environ("Username") = "mijn windows login" Then
    For Each sh In Sheets
        sh.Range("maar ik ga die nu niet allemaal vermelden").Locked = False
        sh.Protect "mijnww"
    Next sh
End If
End Sub

Ik neem aan dat het hier wel mee gaat lukken.
 
Status
Niet open voor verdere reacties.
Terug
Bovenaan Onderaan