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

Actieve rij markeren in beveiligdwerkblad

Status
Niet open voor verdere reacties.

DimitriP2

Gebruiker
Lid geworden
10 feb 2020
Berichten
15
Beste,

Ik heb een excel file waarbij de actieve rij een markering krijgt.
Alles werkte goed tot ik mijn werkblad beveiligde. Er zitten hier geblokkeerde cellen in die niet mogen worden aangepast.

Weet iemand een code om de VBA toch te laten lopen en de user te blokkeren?

vb bestand in bijlage.

grtz

Dimi
 

Bijlagen

  • Probleem_beveiliging.xlsm
    21,9 KB · Weergaven: 15
Zoiets:
Code:
Private Sub Worksheet_SelectionChange(ByVal Target As Range)
    If Not Intersect(Target, Range("A2:H10000")) Is Nothing Then
        ActiveSheet.Unprotect "JeWachtwoord"
        Range("K1").Value = Target.Row
        ActiveSheet.Protect "JeWachtwoord"
    End If
End Sub
 
Je zit in die code in het actieve blad @Ed.
 
Klopt, dan mag ActiveSheet. er eventueel uit.
Maar zit ook niks in de weg.
 
Nee, zit ook niets in de weg.

Wat me meer stoort aan Excel is:
In een standaard module met een Sub en dan moet je het wel gebruiken terwijl je ook in het actieve werkblad bezig bent.
 
Dat komt omdat VBA in een Sheet module aanneemt dat je tegen het werkblad "praat". In een normule module weet VBA dat niet. Dan zou je het ook "tegen" het Workbook object kunnen hebben. Als je in de ThisWorkbook module dus Protect "1" zet, dan beveilig je de werkmap. Maar ik houdt niet van het weglaten om het weglaten, expliciet zijn is meestal beter.
 
Dank je @JKP,

Daar heb je vast een punt.
Ik heb mij in de protect van het werkboek ook nooit verdiept daar ik het niet gebruik.

Ik vond het alleen vreemd dat je activesheet altijd moet gebruiken bij bepaalde objecten of functies terwijl "Range" zonder aanduiding van het blad altijd het actieve aanneemt.
 
Status
Niet open voor verdere reacties.
Terug
Bovenaan Onderaan