Supportnet Computer
Planet of Tech

Supportnet / Forum / Tabellenkalkulation

Blatt schützen in excel





Frage

Hallo ihr fleißigen Helfer! Ich habe mir eine Excel-Mappe erstellt mit 52 Seiten. Nun will ich alle Seiten mit einem Blattschutz versehen, damit ich gesperrte Zellen nicht mehr löschen kann.Muß ich jetzt wirklich jedes einzelne Blatt mit einem Blattschutz versehen oder geht das irgendwie in einem Rutsch ( alle 52 Blätter mit einmal ) ? MfG Hans-Jörg

Antwort 1 von DiNohl

Hallo,

kennst Du Dich mit Makros aus?
Ich hab für sowas mal ein Makro für ´Blattschutz alle ein´ und eins für ´Blattschutz alle aus´ geschrieben.
Standardmässig bietet da Excel m. W. nichts an.

Gruss DiNohl

Antwort 2 von Hajo_Zi

Hallo Hans-Jörg,

mache es mit Makro,
Option Explicit
Dim WsTabelle As Worksheet

Private Sub Aufheben()
For Each WsTabelle In Sheets
WsTabelle.Unprotect ("Passwort")
Next WsTabelle
End Sub

Private Sub Schutz()
For Each WsTabelle In Sheets
WsTabelle.Protect ("Passwort")
Next WsTabelle
End Sub

Gruß Hajo

Antwort 3 von hansel

Ihr seid ja unglaublich schnell! Vielen Dank. Werde es gleich ausprobieren!
Gruß
HJ

Antwort 4 von hansel

Hi Hajo!
Habe das mit dem Makro ausprobiert. Ich habe allerdings nicht die größte Ahnung. Habe das Makro ( ab Option Explicit ) kopiert, und in ein neu erstelltes Makro eingefügt. Wenn ich dann auf Makro ausführen gehe, wird im Makro "Option Explicit" blau untermalt, und eine Fehlermeldung erscheint:"Fehler beim kompilieren: Innerhalb einer Prozedur ungültig".Was mache ich da falsch?
Gruß
Hans-Jörg

Antwort 5 von Hajo_Zi

Hallo Hans-Jörg,

Am besten ist es wenn Du den geposteten Code komplett in ein leeres Modul kopierst. Nur 1x Option Explicit.

Gruß Hajo

Antwort 6 von hansel

Hallo Hajo!
Irgendwie klappts nicht.
Gehe in irgendeine Zelle des Arbeitsblattes, Gehe auf Extras, Makro, das Makro"Blatt schützen", ( habe das so genannt, weil ich es benennen muss, sonst kann ich kein neues Modul erstellen, oder doch falsch?), gehe auf ausführen, und dann kommt jedesmal die oben erwähnte Fehlermeldung.

Mein Makro sieht so aus:

Option Explicit
Dim WsTabelle As Worksheet

Private Sub Aufheben()
For Each WsTabelle In Sheets
WsTabelle.Unprotect ("Passwort")
Next WsTabelle
End Sub

Private Sub Schutz()
For Each WsTabelle In Sheets
WsTabelle.Protect ("Passwort")
Next WsTabelle
End Sub

Ist doch bestimmt was falsch.
Muss ich was in die leeren Klammern schreiben?
Bin in Sachen Makros absoluter Anfänger.
Vielen Dank für Deine Mühe
Gruß
Hans-Jörg

Antwort 7 von Hajo_Zi

Hallo Hans-Jörg,

ich vermute mal das Du den Code in ein leeres Modul kopiert hast.
Über Extra, Makro können die Makros nicht ausgeführt werden da als Private definiert. Dieses Wort mußt Du löschen, wenn es über Extra usw. gestartet werden soll.

Gruß Hajo

Antwort 8 von hansel

Hallo Hajo!
Saustark!!!
Das funktioniert wunderbar!
Vielen, Vielen Dank.
Du ersparst mir wahnsinnig viel Arbeit!
Gruß
Hans-Jörg