Live-Forum - Die aktuellen Beiträge
Anzeige
Archiv - Navigation
1556to1560
Aktuelles Verzeichnis
Verzeichnis Index
Übersicht Verzeichnisse
Vorheriger Thread
Rückwärts Blättern
Nächster Thread
Vorwärts blättern
Anzeige
HERBERS
Excel-Forum (Archiv)
20+ Jahre Excel-Kompetenz: Von Anwendern, für Anwender
Inhaltsverzeichnis

Blattschütz lässt sich ohne PW entfernen

Blattschütz lässt sich ohne PW entfernen
23.05.2017 09:04:27
JoNNy
Hallo zusammen,
kurz und knapp:
Ich schütze meine "Sheets" durch einen Macro mit Passwort und nehme den Schutz runter wenn ein anderes Makro läuft. Also jedes mal wenn ich eine Makro starte ruft dies dann gleich die "unprotect" Prozedur auf und dannach wieder die "Protect".
Problem ist aber, dass ich wenn die Zellen dann wieder gesperrt werden nach der Makro. Dann kann man nämlich mit einem einfachen klick auf "Blattschutz entfernen"
,den Blattschutz ohne Passwort aufheben. Wie kann das sein ?
Sub Protect()
Sheets("Eingabe").Protect Hieristdasspasswort
Sheets("Ausgabe").Protect Hieristdasspasswort
Sheets("AusgabeWoche").Protect Hieristdasspasswort
Sheets("AusgabeMonat").Protect Hieristdasspasswort
Sheets("AusgabeJahr").Protect Hieristdasspasswort
End Sub
Sub Unprotect()
Sheets("Eingabe").Unprotect Hieristdasspasswort
Sheets("Ausgabe").Unprotect Hieristdasspasswort
Sheets("AusgabeWoche").Unprotect Hieristdasspasswort
Sheets("AusgabeMonat").Unprotect Hieristdasspasswort
Sheets("AusgabeJahr").Unprotect Hieristdasspasswort
Sheets("Eingabe").Select
End Sub

Gruß JoNNy

13
Beiträge zum Forumthread
Beiträge zu diesem Forumthread

Betreff
Datum
Anwender
Anzeige
AW: Blattschütz lässt sich ohne PW entfernen
23.05.2017 09:21:41
Lisa
Hallo JoNNy,
ich bin absolut kein Profi, hatte aber ein ähnliches Problem, das ich so gelöst habe:
Public Passwort As String
Sub SchreibschutzAktivieren()
Dim Passwort As String
Dim i As Integer
Passwort = "geheim"
For i = 1 To Worksheets(Worksheets.Count).Index
Worksheets(i).Protect Passwort, UserInterfaceOnly:=True, DrawingObjects:=True, Contents: _
=True, Scenarios:=True
Next i
End Sub

Sub SchreibschutzDeaktivieren()
Dim PWEingabe As String
Dim i As Integer
PWEingabe = InputBox("Bitte geben Sie das Passwort zum Aufheben des Schreibschutz ein.")
If PWEingabe = Passwort Then
For i = 1 To Worksheets(Worksheets.Count).Index
Worksheets(i).Unprotect Passwort
Next i
Else
MsgBox ("Das Passwort ist nicht korrekt!")
End If
End Sub

Anzeige
AW: Blattschütz lässt sich ohne PW entfernen
23.05.2017 09:37:32
Rainer
Hallo Jonny,
kannst du den Code posten, wie deine Variable

Hieristdasspasswort
definiert wird?
Gruß,
Rainer
AW: Blattschütz lässt sich ohne PW entfernen
23.05.2017 09:50:14
JoNNy
Hallo Lisa,
danke das hat geklappt.
Hatte das Passwort zuvor in "" dahinter.
Gruß JoNNy
AW: Blattschütz lässt sich ohne PW entfernen
23.05.2017 09:57:00
mumpel
Hallo!
Das hätte trotzdem funktionieren müssen, egal ob Du das Kennwort direkt angibst oder als String über eine Variable.
Gruß, René
AW: Blattschütz lässt sich ohne PW entfernen
23.05.2017 10:00:10
JoNNy
Moin,
ja das hatte mich eben auch gewundert, aber es klappt jetzt nur was noch nicht klappt ist,
dass die Makros laufen trotz Blattschutz.
Gruß JoNNy
Workbook_Open()
23.05.2017 09:43:10
RPP63
Moin!
Ich würde (abseits Deines Problems) die entsprechenden Blätter im Workbook_Open-Event mit der Worksheet.Protect-Methode und dem zusätzlichen Parameter UserInterfaceOnly:=True schützen.
Dann darf VBA wursteln, ohne dass Du den Blattschutz jedesmal entfernen und wieder neu setzen musst.
Gruß Ralf
Anzeige
AW: Workbook_Open()
23.05.2017 09:54:43
JoNNy
Hallo Ralf,
wie würde das dann aussehen ?
Ich bekomme den Syntax grad irgendwie nicht hin :).
Gruß JoNNy
AW: Workbook_Open()
23.05.2017 09:58:51
RPP63
Für alle Sheets:
Private Sub Workbook_Open()
Dim WKS As Worksheet
For Each WKS In ThisWorkbook.Worksheets
WKS.Protect "DeinKennwort", UserInterfaceOnly:=True
next
End Sub

Für eine Auswahl von Sheets solltest Du Select Case nutzen.
Gruß Ralf
AW: Workbook_Open()
23.05.2017 10:06:08
JoNNy
Hallo Ralf,
danke das protecten klappt die Makros laufen aber immer noch auf Fehler "1004".
Gruß JoNNy
Nachtrag
23.05.2017 10:18:43
JoNNy
Hallo Ralf,
kann es sein das die Makros nur Werte ändern können und nicht ausblenden dürfen, wenn UserInterfaceOnly:=True ?
Gruß JoNNy
Anzeige
AW: Nachtrag
23.05.2017 14:26:44
Werner
Hallo Jonny,
dann zeig doch mal deinen Code zum Ausblenden. Das sollte mit UserInterfaceOnly:=True eigentlich funktionieren.
Gruß Werner
AW: Nachtrag
23.05.2017 15:52:58
JoNNy
Hallo Werner,
das ist zwar nicht der eigentliche Ausblendecode aber es scheitert bereits daran.

Sheets("Ausgabe").Columns("A:DDD").Hidden = False
Sheets("AusgabeWoche").Columns("A:DDD").Hidden = False
Sheets("AusgabeMonat").Columns("A:DDD").Hidden = False
Sheets("AusgabeJahr").Columns("A:DDD").Hidden = False

Gruß JoNNy
AW: Nachtrag
23.05.2017 16:26:05
Werner
Hallo Jonny,
keine Ahnung was du machst. Schau dir mal die beiliegende Datei an. Blatt1 ist geschützt, Passwort = Jonny
Mach die Datei mal auf und klicke in eine Zelle doppelt, dann siehst du, dass sie geschützt ist. Jetzt betätige den Button auf dem Blatt, der blendet Spalten aus, obwohl das Blatt geschützt ist.
https://www.herber.de/bbs/user/113755.xlsm
Gruß Werner
Anzeige

Links zu Excel-Dialogen

Beliebteste Forumthreads (12 Monate)

Anzeige

Beliebteste Forumthreads (12 Monate)

Anzeige
Anzeige
Anzeige