ich stehe vor einem kleinen Problem mit einem Makro, welches für den Schutz bestimmter Zeilen _ zuständig ist. Hiermit versuche ich Zellen, die einmal ausgefüllt werden, vor Überschreibungen zu schützen.
Private Sub Workbook_BeforeClose(Cancel As Boolean)
Dim Merker As Boolean
Dim SH As Worksheet
Merker = Me.Saved
For Each SH In ThisWorkbook.Worksheets
SH.Unprotect "test"
SH.UsedRange.Locked = True
On Error Resume Next
SH.UsedRange.SpecialCells(xlCellTypeBlanks).Locked = False
On Error GoTo 0
SH.Protect "test"
Next
If Merker Then Me.Save
End Sub
Dieser Code ist bei mir in "DieseArbeitsmappe" hinterlegt. Der Code funktioniert auch soweit ganz gut, dass ausgefüllte Zellen gesperrt werden, sobald die Datei geschlossen wird.
Das Problem allerdings besteht darin, dass sobald ich den Blattschutz aufhebe, um fehlerhafte Einträge zu korrigieren (diese Verfügung liegt bei wenigen Usern) und die Datei anschließend wieder schließe, ein Befüllen der freien Zellen nicht mehr möglich ist.
Hier das ganze mal in einem Beispiel: https://www.herber.de/bbs/user/117890.xlsm
Vielleicht hat ja einer von euch eine Idee, womit die Misere verbunden ist und hat einen Denkanschub für mich.
Vielen Dank im Voraus für jeglichen Input.