HERBERS
Excel-Forum
20+ Jahre Excel-Kompetenz: Von Anwendern, für Anwender
Forumbeitrag
Excel-Version des Fragestellers:
365 privat
Erfahrungslevel des Fragestellers:
Kaum Excel/VBA-Kenntnisse
velo
31.03.2025 14:57:51
Nachtrag
Kleiner Nachtrag, man muss den Arbeitsblattschutz noch aufheben, bevor man die Zellen sperrt.

Das ganze sieht dann so aus:
Option Explicit


Private Sub Workbook_Open()
Dim ws As Worksheet
Dim Monate As Object
Set Monate = CreateObject("Scripting.Dictionary")

Monate.Add "Jan", 1
Monate.Add "Feb", 2
Monate.Add "Mrz", 3
Monate.Add "Apr", 4
Monate.Add "Mai", 5
Monate.Add "Jun", 6
Monate.Add "Jul", 7
Monate.Add "Aug", 8
Monate.Add "Sep", 9
Monate.Add "Okt", 10
Monate.Add "Nov", 11
Monate.Add "Dez", 12

For Each ws In ThisWorkbook.Worksheets
If Date >= DateSerial(Year(Date), Monate(ws.Name) + 1, 0) + 12 Then
ws.Unprotect "DeinPasswort" 'hier durch dein Passwort ersetzen, falls gegeben. Wenn kein Passwort vergeben, dann komplett weg
ws.Cells.Locked = True
ws.Protect "DeinPasswort" 's.o.
End If
Next ws
End Sub
Als Antwort auf diesen Beitrag
velo
31.03.2025 14:34:43
AW: Blattschutz automatisch sperren
Hallo,

probiers mal mit folgendem Code, hier werden die Zellen 12 Tage nach Monatsende wieder gesperrt:
Option Explicit


Private Sub Workbook_Open()
Dim ws As Worksheet
Dim Monate As Object
Set Monate = CreateObject("Scripting.Dictionary")

Monate.Add "Jan", 1
Monate.Add "Feb", 2
Monate.Add "Mrz", 3
Monate.Add "Apr", 4
Monate.Add "Mai", 5
Monate.Add "Jun", 6
Monate.Add "Jul", 7
Monate.Add "Aug", 8
Monate.Add "Sep", 9
Monate.Add "Okt", 10
Monate.Add "Nov", 11
Monate.Add "Dez", 12

For Each ws In ThisWorkbook.Worksheets
If Date >= DateSerial(Year(Date), Monate(ws.Name) + 1, 0) + 12 Then
ws.Cells.Locked = True
End If
Next ws
End Sub


Achtung: Du musst den Code in DieseArbeitsmappe und nicht in ein Modul einfügen:
Userbild

Und natürlich die Dictionary Keys ändern wenn du die Monate ausgeschrieben hast --> "Jan" wird zu "Januar" usw.

VG
velo
Folgenachrichten
Antwort auf Beitrag erstellen

Beispieldatei hochladen