• 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 Automatisch extra kolom vergrendelen per week

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

stefano

Gebruiker
Lid geworden
22 mei 2004
Berichten
865
Van een bestand in bijlage zou ik op twee tabbladen KA en FIELD kolommen willen beveiligen zodat deze niet meer aan te passen zijn. Dit gebeurt nu manueel door wekelijks een selectie uit te voeren van kolom H tot de kolom van vandaag + 8 weken. Daarna worden de tabbladen en het bestand beveiligd met een paswoord. De data in die beveiligde kolommen is hierdoor niet meer te wijzigen door de gebruikers. Ik ben op zoek naar een code waarin deze beveiliging elke week aangepast wordt via een macro. (in totaal gaat dit over 15 verschillende bestanden, vandaar de vraag voor automatisatie)

De tabbladen worden beveiligd via onderstaande instellingen.

Vergrendelde cellen selecteren, Ontgrendelde cellen selecteren , Autofilter gebruiken, Objecten bewerken, Scenario’s bewerken.

De vraag hieromtrent : zou het mogelijk zijn om via een macro die kolommen te beveiligen voor aanpassing telkens er een week voorbij gaat ? Het gaat hier om een 15-tal bestanden. Extra moeilijkheid : niet elk bestand heeft tabblad KA en FIELD, maar wel altijd één van de twee.

Idee hierachter : Vandaag 18/04/2024 behoort tot week van maandag 15 april 2024-16 (kolom BW). Vanaf kolom BW 8 weken extra selecteren om te beveiligen, dit betekent dat kolommen H tot en met CE zouden beveiligd moet worden op vandaag of alle datums binnen deze week. Vanaf komende maandag 22 april zou dan beveiligd moeten worden vanaf H tot en met kolom CF. De beveiligde kolommen mogen lichtgrijs getoond worden.

Ik heb nu het bestand beveiligd met paswoord A en de verschillende tabbladen ook met paswoord A.

Is dit mogelijk ? Kunnen jullie hierbij helpen ?
 

Bijlagen

Waarom maak je van het bestand geen alleen-lezen bestand ?
 
Omdat er na vandaag + 8 weken nog data moeten veranderd kunnen worden.
 
Door iedereen die het bestand kan raadplegen ?
 
Zo misschien:
Code:
Sub Vergrendelen()
    Sheets("KA").Unprotect Password:="A"
    maandag = Date - Weekday(Date, vbUseSystem) + 1
    kop = Format(maandag, "dd MMM yy")
    kolend = Cells.Find(kop).Offset(, 8).Column
    Range(Columns(8), Columns(kolend)).Locked = True
    Sheets("KA").Protect Password:="A"
End Sub
 
Code:
Sub hsv()
Dim sv
With Sheets("KA")
  .Unprotect "A"
  sv = .Cells(1).CurrentRegion
 With .Range("h1").Resize(UBound(sv), Application.Match(Year(Date) & "-" & DatePart("ww", Date, 2, 2), .Rows(1), 0) + 1)
  .Interior.Color = RGB(217, 217, 217)
  .Locked = True
 End With
  .Protect "A"
End With
End Sub
 
Het nadeel van zoveel tekst is dat het maar de heft gelezen wordt. Dit zal een betere uitvoerig zijn.
 

Bijlagen

Je wil conceptueel een onderscheid maken tussen een invoerbestand en een bestand voor opslag van ingevoerde gegevens.
Ontwerp je aanpak dan ook conform dat concept.
 
Status
Niet open voor verdere reacties.
Terug
Bovenaan Onderaan