Herbers Excel-Forum - das Archiv
UserInterfaceOnly
Betrifft: UserInterfaceOnly
von: Christian
Geschrieben am: 12.11.2003 16:44:12
Hi @ all,
ich habe folgendes Problem. Ich schütz mein Tabellenblätter mit folgender Anweisung:
If ActiveSheet.ProtectContents = False Then
ActiveSheet.Protect UserInterfaceOnly:=True, Password:=PassWd$
End If
Ich nutze dabei "UserInterfaceOnly" damit die meisten makros weiterhin funktionieren und damit ich sie nicht alle anpassen muss.
Wenn ich aber Excel schließe und im Anschluss die Arbeitsmappe neu öffne hat sie den Befehl "UserInterfaceOnly:=True" vergessen und mein Makros zeigen eine Fehlermeldung an.
Es Funktioniert erst wieder, wenn ich den Blattschutz wieder neu setze.
Gibt es auch eine andere Möglichkeit, als den Blattschutz bei jedem öffnen der Mappe neu zu initialisieren??
Betrifft: AW: UserInterfaceOnly
von: GerdW
Geschrieben am: 12.11.2003 17:10:21
Richtig, diese Art Schutz wird nicht gespeichert, verleg dein Makro
in WorkbookOpen.
Gerd
Betrifft: AW: UserInterfaceOnly
von: PeterW
Geschrieben am: 12.11.2003 17:10:41
Hallo Christian,
die VBA-Hilfe sagt dazu:
Wenn Sie die Protect-Methode mit dem auf True gesetzten UserInterfaceOnly-Argument bei einem Tabellenblatt anwenden und dann die Arbeitsmappe speichern, ist bei erneutem Öffnen der Arbeitsmappe das gesamte Tabellenblatt (und nicht nur die Oberfläche) geschützt. Um den Schutz des Tabellenblatts aufzuheben, die Benutzeroberfläche aber nach Öffnen der Arbeitsmappe weiter zu schützen, müssen Sie wieder die Protect -Methode mit dem auf True gesetzten UserInterfaceOnly anwenden.
Ausweg: im Workbook_Open Ereignis (in DieseArbeitsmappe) den Schutz erneut setzen.
Gruß
Peter