Clever-Excel-Forum

Normale Version: Passwort für mehrere Tabellenblätter
Du siehst gerade eine vereinfachte Darstellung unserer Inhalte. Normale Ansicht mit richtiger Formatierung.
Seiten: 1 2
Hallo ihr Lieben, 

meine Frage ist eigentlich Simpel. Habe bereits im Internet nachgelesen, jedoch keine klare Antwort rauslesen können. 

Ist es möglich mit einmal Passwort eingeben mehrere Tabellenblätter (z.B. bei 8 Tabellenblätter in einer Arbeitsmappe, Tabellenblatt 2-7) mit einem Passwortschutz zu versehen und diese dann auch mit einmal eingeben wieder aufzuheben? 

Danke im Voraus

MfG

Ace
Hallo,

ich denk, ohne VBA wird das nicht gehen. Wäre das denn überhaupt eine Option?
Hallo,

du könntest versuchen, das mit dem "Schutz" der gesamten Arbeitsmappe zu lösen. Wobei man sich unter Schutz nichts sicheres vorstellen darf, das kann man in ein paar Sekunden aushebeln.
Also die gesamt Arbeitsmappe zu Schützen kommt nicht in Frage. Derjenige der die Datei bekommt, soll in den Tabellen bestimmte Zeilen und Spalten nicht verändern können. Deswegen Schütze ich jeweils nur bestimmte Berieche in einer Tabelle. Das man es in ein paar Sekunden aushebeln kann stellt auch kein Problem dar. 

Wenn Sie mir genau erklären können wie das mit VBA geht, dann kommt das natürlich auch in Frage  :19:
Hallo,

zunächst mal bitte "Du" ;)

Und das klappt, z.B., so:

Code:
Option Explicit

Sub protectSheets()
   Dim wks As Worksheet
   
   For Each wks In ThisWorkbook.Worksheets
       If InStr(1, "Sheet1Sheet2Sheet3Sheet4....", wks.Name) Then 'In den Anführungszeichen trägst Du die Namen Deiner Sheets ein
           wks.Protect "DeinPasswort"
       End If
   Next wks
End Sub

Sub unprotectSheets()
   Dim wks As Worksheet
   
   For Each wks In ThisWorkbook.Worksheets
       If InStr(1, "Sheet1Sheet2Sheet3Sheet4....", wks.Name) Then 'In den Anführungszeichen trägst Du die Namen Deiner Sheets ein
           wks.Unprotect "DeinPasswort"
       End If
   Next wks
End Sub
Du solltest allerdings besser den CodeName, statt Name verwenden. Dazu kannst Du im Internet einiges lesen.
Ich hatte gehofft, dass du mir das etwas genauer erklären kannst  :19: 
Ich hab jetzt meine Datei mit Makros gespeichert. Dann gehe ich auf Entwicklertools und dann auf Visual Basic. Dann habe ich "Diese Arbeitsmappe" angeklickt. Dann den Code reinkopiert. Soll ich bei den Namen zwischen den Anführungszeichen eine Leerzeile lassen? oder das mit einem Komma trennen? oder jedes einzelne Blatt mit Anführungszeichen versehen? Also du siehst schon, dass ich eine etwas genauere Erklärung brauche  :19: wo finde ich die Codenamen? 

MfG und vielen Dank

Ace
Hallo,

wo welcher Code zu stehen hat bzw. stehen sollte kannst Du hier nachlesen. Die Codennamen stehen im Projektexplorer in Klammern.
Hi,

(08.01.2018, 15:41)Portgas D. Ace schrieb: [ -> ]Soll ich bei den Namen zwischen den Anführungszeichen eine Leerzeile lassen? oder das mit einem Komma trennen? oder jedes einzelne Blatt mit Anführungszeichen versehen?

also für mich ist diese Zeile eindeutig:
Zitat:If InStr(1, "Sheet1Sheet2Sheet3Sheet4....", wks.Name) Then 'In den Anführungszeichen trägst Du die Namen Deiner Sheets ein

einfach die Namen ohne Leer-, oder sonstiges Trennzeichen hintereinanderschreiben zwischen die "".
Habe das jetzt versucht ohne eine Leerzeile oder andere Trennzeichen zu benutzen, jedoch klappt das irgendwie nicht. 


Ich lade mal eine Beispieldatei hoch, und wenn einer so nett ist kann er ja mal den Code so reinkopieren wie es sein soll und wieder hochladen. Würde dann gerne sehen, ob das so klappt wie ich mir das vorstelle. Die Tabellenblätter Stunden, Tage und Anzahl sollten hierbei bei einmal eingeben geschützt werden und wieder mit einmal eingeben wieder aufgehoben werden.

Danke im Voraus

Gruß 

Ace
Hi
Also in deiner Datei war noch nirgendwo Code enthalten.
Ich hab dann mal ein Modul eingefügt, Sperren_Entsperren genannt, Code reinkopiert, die Namen der gewünschten Tabellenblätter eingefügt und für die zwei Sub jeweils einen Shortcut angelegt.
Strg+Shift+P für Protect und
Strg+Shift+U für Unprotect

Taugt dir das so ?

Gruss Igel
Seiten: 1 2