ich habe für mehrere Personen Arbeitsplaner. Jeder Planer kann von allen Mitarbeitern eingesehen werden, daher sind die ganzen Planer Freigegeben (um Dauer-Blockaden zu vermeiden).
Die Planer selbst haben Massen an Verweisen und Formatierungen im Hintergrund, daher sind die Tabellenblätter mit einem Blattschutz belegt, dessen Passwort nur ich kenne.
In vorgeschriebenen Bereichen haben einzelne Vorgesetzte Schreibrechte (mit Passwort + Befehl "Benutzer dürfen Bereiche bearbeiten" gelöst).
Nun müssen die Vorgesetzten jeden Tag das Passwort eingeben. Eine elegante Lösung wäre, dass ich per VBA die Kennung auslese und entsprechende Rechte vergebe.
Ist es möglich per VBA einfach das Kennwort für "Benutzer dürfen Bereiche bearbeiten" einzugeben? Wenn ich den Makro-Recorder benutze, wirft es nichts aus.
Der einzige Ansatz, den ich derzeit habe:
Sub SchreibenErlauben()
Dim strPasswort As String
Dim k As Integer
strPasswort = "xxx"
For k = 1 To 12
Sheets(k).Select
ActiveSheet.Unprotect (strPasswort)
ActiveSheet.Range("E4:BG26").Locked = False
Next
For k = 1 To 12
Sheets(k).Select
Range("A1").Select
ActiveSheet.Protect Password:=strPasswort
ActiveSheet.EnableSelection = xlNoRestrictions
Next
End Sub
Hier habe ich allerdings das Problem, dass ich auch vor jedem Schließen die Schleife wieder laufen lassen müsste, um die Bereiche zu sperren. Klicke ich dann bei der Frage "wollen Sie speichern?" auf "Nein", bleibt der Bereich offen.
Des Weiteren frisst es doch merklich Zeit, jedes Mal alle Blätter (12 Stück = 12 Monate) zu entsperren, Bereiche freizugeben und die Blätter wieder zu sperren.
Kennt hier jemand eine elegantere Lösung?
Vielen Dank vorab!