Live-Forum - Die aktuellen Beiträge
Anzeige
Archiv - Navigation
1312to1316
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

mehrere Passwörter aktivieren

mehrere Passwörter aktivieren
23.05.2013 15:06:42
Manfred
Hallo zusammen,
habe ein Excelsheet mit ca. 20 Blättern (Kalendern), jedes einzelne Blatt wird mit einem anderen Passwort versehen, für jedes Blatt hat das Passwort eine eigene Variable, z.B. LW, MB, AR, usw.
Beispiel:
Worksheets("Landwald").Protect Password:=LW
Worksheets("Meinbaum").Protect Password:=MB
Gibt es eine Möglichkeit alle 20 Passwörter beim starten des Excelsheets neu zu aktivieren ?
Weitere INFO:
In „Diese Arbeitmappe“ habe ich schon eine Code drin der die Abfrage von Feiertagen ferhindert.
Private Sub Workbook_SheetActivate(ByVal Sh As Object)
If Sh.Name = "Feiertage" Or Sh.Name = "Zusammenfassung" Or Sh.Name = "Diagramme" Or Sh.Name = "Mitarbeiter" Then 'alle Blaetter ausser Feiertage .......
Else
Cells(4, Application.Match(CLng(Date), Rows(4), 0)).Select
End If
Kann mir vielleicht jemand weiterhelfen ?
Mit freundlichen Grüßen
Manfred

17
Beiträge zum Forumthread
Beiträge zu diesem Forumthread

Betreff
Datum
Anwender
Anzeige
AW: mehrere Passwörter aktivieren
23.05.2013 15:15:18
Klaus
Hallo Manfred,
ja: genau so wie du es geschrieben hast:
Worksheets("Landwald").Protect Password:=LW
Worksheets("Meinbaum").Protect Password:=MB

Halt für jedes Sheet einzeln. Mit einer Schleife wirst du da nichts, weil die Passwörter ja immer andere sind.
Grüße,
Klaus M.vdT.

AW: mehrere Passwörter aktivieren
23.05.2013 15:22:27
Manfred
Hallo Klaus,
mein Excelsheet flattert halt bis alle 20 Passwörter aktiviert sind.
Kann ich das vermeiden ?
Warum ist nach dem speichern und schließen per Makro der Schreibschutz trotz Passwort beim nächsten öffnen weg ?
Die Zellen können markiert und dann geändert werden.
Gruss
Manfred

Anzeige
Kein .Select = kein Flattern ;-) (owT)
23.05.2013 15:25:12
EtoPHG

AW: Kein .Select = kein Flattern ;-) (owT)
23.05.2013 15:51:54
Manfred
Hallo Eto...,
leider habe ich kein Select im Code drin.
Gruss
Manfred

AW: Kein .Select = kein Flattern ;-) (owT)
23.05.2013 15:54:25
Klaus
Hallo Manfred,
in deinem ersten Beitrag steht diese Zeile:
Cells(4, Application.Match(CLng(Date), Rows(4), 0)).Select
Ob die jetzt mit dem Tabellenschutz zu tuen hat weiss niemand, denn wir kennen ja deine Datei nicht *Zaunpfahl*. Aber .Selects sind bekanntlich Rudeltiere, die meistens in großen Gruppen auftreten und dann mühsam vertrieben werden müssen .... :-)
Grüße,
Klaus M.vdT.

AW: Kein .Select = kein Flattern ;-) (owT)
23.05.2013 16:07:17
Manfred
Hallo Klaus,
ja du hast recht.
Habe in fast allen Blättern ab Zeile Q4-NQ4 einen Kalender vom 1.1. bis 31.12. stehen.
Der u.g. Code verhindert das in den eingearbeiteten Blättern nicht nach dem aktuellen Datum gesucht wird, da in diesen Blättern kein Kalender drin ist kommt es sonst zur Fehlermeldung.
Private Sub Workbook_SheetActivate(ByVal Sh As Object)
If Sh.Name = "Feiertage" Or Sh.Name = "Zusammenfassung" Or Sh.Name = "Diagramme" Or Sh.Name = " _
Mitarbeiter" Then 'alle Blaetter ausser Feiertage .......
Else
Cells(4, Application.Match(CLng(Date), Rows(4), 0)).Select
End If
End Sub
Gruss
Manfred

Anzeige
AW: mehrere Passwörter aktivieren
23.05.2013 15:30:42
Klaus
Hallo Manfred,
das Flattern hat Hansueli schon korrekt mit dem ".select" Befehl identifiziert.
Ich nehme an, dein Speichern-Makro (oder sonsteins) hebt den Blattschutz wieder auf. Aber da ich deine Datei nicht kenne, kann ich dir da nicht helfen *Zaunpfahl*
Grüße,
Klaus M.vdT.

AW: mehrere Passwörter aktivieren
23.05.2013 15:56:44
Manfred
Hallo Klaus,
leider kann ich den ganzen Excelsheet nicht hochladen, es ist zu groß.
Geht das auch in abgespeckter Form ?
Oder es einen Wert wenn ich einzele Codes reinkopiere ?
Der Blattschutz geht nach meiner Meinung mit dem Befehl CLOSE verloren.
Gruß
Manfred

Anzeige
AW: mehrere Passwörter aktivieren
23.05.2013 16:00:39
EtoPHG
Hallo Manfred,
Kannst alles aus den Blättern löschen, wir sind primär am Code interessiert.
Die .Close Methode hat unter anderem Parameter, die es erlauben Änderungen nicht abzuspeichern!
Gruess Hansueli

AW: mehrere Passwörter aktivieren
23.05.2013 16:56:45
Manfred
Hallo Hansueli,
Habe jetzt mal eine Datei in abgespeckter Form erstellt.
Es ist aber klar daß das flattern bei 2 Blättern nicht zu sehen ist, bei 20 aber schon.
https://www.herber.de/bbs/user/85492.zip
Mit freundlichen Grüßen
Manfred

AW: mehrere Passwörter aktivieren
23.05.2013 23:11:26
fcs
Hallo Manfred,
das Problem ist die Art wie du die Variablen deklariert oder besser nicht deklariert hast.
Die Variablen LW bzw. BM usw. haben nur in der Prozedur
Landwald_Schutz_aus bzw. Meinbaum_Schutz_aus
den zugewiesenen Wert für das Passwort. In den anderen Prozeduren ist/bleibt die Variable leer.
Damit die Anwendung und der Vergleich der Passwörter funktioniert müssen die Variablen mit den den Passwörter in einem allgemeinen Modul als Public Const Konstanten deklariert werden.
Außerdem darfst du, wenn das Passwort für 1 Mitarbeiterblatt eingegeben wurde, nicht in einer Schleife versuchen mit diesem Kennwort den Schutz für alle Blätter aufzuheben, sondern immer nur den Schutz für das jeweilige Blatt.
Ich hab ein neues Modul angelegt mit den Variablenzuweisungen für die Passwörter und die Schutz_aus-Prozeduren angepasst in den Modulen der Mitarbeiter-Tabellenblätter.
Gruß
Franz
https://www.herber.de/bbs/user/85493.zip

Anzeige
Viell meint Manfred ja so etwas, ...
23.05.2013 15:47:18
Luc:-?
…Klaus;
innerhalb von Workbook_Open (index-unabhängig) …
Const naBlatt$ = "Landwald Meinbaum", pwBlatt$ = "LW MB"
Dim bix As Long, axNaBlatt, axPwBlatt, sh As Worksheet
axNaBlatt = Split(naBlatt): axPwBlatt = Split(pwBlatt)
For Each sh In Me.Sheets
With WorksheetFunction
bix = 0: bix = .Match(sh.Name, axNaBlatt, 0)
If CBool(bix) Then _
sh.Protect axPwBlatt(bix - 1), True, True, True, True
End With
Next sh
Dabei muss natürlich die Reihenfolge von Blattnamen und Passwörtern in den beiden Konstt gleich sein, die Anordnung der Blätter in der Mappe spielt keine Rolle.
Gruß Luc :-?

Anzeige
...wobei hier LW u.MB natürl den Inhalt ...
23.05.2013 15:58:10
Luc:-?
…von Manfreds PW-Variablen repräsentieren soll, nicht den jeweiligen VariablenNamen!
Luc :-?

AW: mehrere Passwörter aktivieren
24.05.2013 00:02:14
steffen
um die blätter zu schützen, könnte auch das hier passen (DieseArbeitsmappe):
Private Sub Workbook_Open()
On Error Resume Next
Dim sh As Worksheet
Application.ScreenUpdating = False
For Each sh In ActiveWorkbook.Worksheets
If sh.ProtectContents = False Then
wks = sh.Name
Select Case wks
Case Is = "Meinbaum"
PW = "meba"
Case Is = "Landwald"
PW = "lawa"
'Case Is = und nun die weiteren Blattnamen
'   PW = hier das entprechende Passwort
End Select
sh.Protect Password:=PW
End If
Next sh
Application.ScreenUpdating = True
End Sub

Anzeige
So rum oder anders rum ...
24.05.2013 08:06:09
Klaus
Hallo Steffen,
klar würde das auch funktionieren ... oder ob ich nun jedes Blatt direkt aufrufe und schütze, oder per Schleife alle Blätter aufrufe und dann jedes Blatt abfrage ...
Ich seh ehrlich gesagt den Vorteil der Schleife in diesem Spezialfall nicht, da der benötigte Code dadurch nicht kürzer und eleganter sondern, im Gegenteil, nur länger und spezieller wird.
Grüße,
Klaus M.vdT.
(soll kein Flame sein, sondern eine fachliche Diskussion fördern!)

AW: mehrere Passwörter aktivieren
24.05.2013 17:22:57
Tino
Hallo,
ich würde ein verstecktes Blatt mit den Tabellen und Kennwörten anlegen und dieses abfragen.
Hier ein Beispiel (die Tabelle6, Kennwort-Tabelle ist versteckt)
https://www.herber.de/bbs/user/85506.xls
Gruß Tino

Anzeige
AW: mehrere Passwörter aktivieren
27.05.2013 12:56:00
Manfred
Hallo zusammen,
das Thema ist so wie ich sehe etwas kompliziert, ich habe mich dafür entschieden daß ich nur eine Speicherung mit dem Makro mache aber kein schließen, dann bleibt mir der Blatschutz erhalten.
Vielen Dank an alle die mich unterstützt haben.
Mit freundlichen Grüßen
Manfred

Beliebteste Forumthreads (12 Monate)

Anzeige

Beliebteste Forumthreads (12 Monate)

Anzeige
Anzeige
Anzeige