Dieses Forum nutzt Cookies
Dieses Forum verwendet Cookies, um deine Login-Informationen zu speichern, wenn du registriert bist, und deinen letzten Besuch, wenn du es nicht bist. Cookies sind kleine Textdokumente, die auf deinem Computer gespeichert werden. Die von diesem Forum gesetzten Cookies werden nur auf dieser Website verwendet und stellen kein Sicherheitsrisiko dar. Cookies aus diesem Forum speichern auch die spezifischen Themen, die du gelesen hast und wann du zum letzten Mal gelesen hast. Bitte bestätige, ob du diese Cookies akzeptierst oder ablehnst.

Ein Cookie wird in deinem Browser unabhängig von der Wahl gespeichert, um zu verhindern, dass dir diese Frage erneut gestellt wird. Du kannst deine Cookie-Einstellungen jederzeit über den Link in der Fußzeile ändern.

Passwort für mehrere Tabellenblätter
#1
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
Antworten Top
#2
Hallo,

ich denk, ohne VBA wird das nicht gehen. Wäre das denn überhaupt eine Option?
Gruß Jonas
Antworten Top
#3
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.
Viele Grüße
Klaus-Dieter
Der Erfolg hat viele Väter, 
der Misserfolg ist ein Waisenkind
Richard Cobden
Antworten Top
#4
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:
Antworten Top
#5
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.
Gruß Jonas
Antworten Top
#6
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
Antworten Top
#7
Hallo,

wo welcher Code zu stehen hat bzw. stehen sollte kannst Du hier nachlesen. Die Codennamen stehen im Projektexplorer in Klammern.
Gruß Stefan
Win 10 / Office 2016
Antworten Top
#8
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 "".
Antworten Top
#9
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


Angehängte Dateien
.xlsm   Klatte Clever Excel.xlsm (Größe: 9,5 KB / Downloads: 5)
Antworten Top
#10
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


Angehängte Dateien
.xlsm   Kopie von Klatte Clever Excel.xlsm (Größe: 16,34 KB / Downloads: 5)
Ich kann nicht alles wissen,
aber vieles lernen ! 19
[-] Folgende(r) 1 Nutzer sagt Danke an Igelbauer für diesen Beitrag:
  • Portgas D. Ace
Antworten Top


Gehe zu:


Benutzer, die gerade dieses Thema anschauen: 1 Gast/Gäste