Herbers Excel-Forum - das Archiv

Blattschutz für mehrere Dateien

Informationen und Beispiele zu den hier genannten Dialog-Elementen:
Bild

Betrifft: Blattschutz für mehrere Dateien
von: Marcel

Geschrieben am: 22.12.2006 09:23:50
Hallo,
ich nutze Excel 2002 und möchte für einige Dateien (die ggf. mehrere Tabellenblätter haben) einen Blattschutz einfügen. Da es relativ viele Dateien sind, möchte ich die Eingabe des Blattschutzes gerne automatisieren. Geht so etwas? Wenn Ja, wie?
Vielen Dank für Eure Hilfe.
Marcel
Bild

Betrifft: AW: Blattschutz für mehrere Dateien
von: Heinz H

Geschrieben am: 22.12.2006 09:52:58
Hallo Marcel
Ich habe in meiner Mappe es so gemacht.
In einem Tab.Blatt 2 Command Button gesetzt.
Command Button 1 Setzt den Blattschutz.
Command Button 2 hebt den Schutz wieder auf.
ABER OHNE PASSWÖRTER:
Gruß Heinz
Private Sub CommandButton1_Click()
'Sub Blattschutz_alle_Tabellen_gesetzt()
Dim i As Worksheet
Dim z As Integer
z = 0
For Each i In ActiveWorkbook.Worksheets
i.Protect
z = z + 1
Next i
'MsgBox z & " Tabellen geschützt"
End Sub

Private Sub CommandButton2_Click()
Application.ScreenUpdating = False
'Sub Blattschutz_alle_Tabellen_aufheben()
Dim i As Worksheet
For Each i In ActiveWorkbook.Worksheets
i.Unprotect
Next i
End Sub

Bild

Betrifft: AW: Blattschutz für mehrere Dateien
von: haw

Geschrieben am: 22.12.2006 10:09:39
Hallo Marcel,
hier eine Möglichkeit in allen Dateien des angegebenen Ordners und seiner Unterordner alle Tabellenblätter mit einem Passwort zu schützen.
Zum Aufheben des Schutzes einfach Protect durch Unprotect ersetzen:
Sub BlattschutzSetzen()
Dim sSource$, iCount%, iCounter%
Dim wks As Worksheet
sSource = "C:\Daten\"
With Application.FileSearch
.NewSearch
.LookIn = sSource
.Filename = "*.xls"
.SearchSubFolders = True
.Execute
iCount = .FoundFiles.Count
For iCounter = 1 To iCount
Workbooks.Open Filename:=.FoundFiles(iCounter)
For Each wks In ActiveWorkbook.Worksheets
wks.Protect Password:="xxx"
Next wks
ActiveWorkbook.Close True
Next iCounter
End With
End Sub

Gruß Heinz
Bild

Betrifft: AW: Blattschutz für mehrere Dateien
von: Marcel

Geschrieben am: 22.12.2006 11:20:13
Hallo,
vielen Dank für Eure Antworten.
Ich habe noch einmal nachgesehen, der Blattschutz liegt schon vor, ich müßte "nur" noch die Passwörter vergeben.
Wie sieht dann das Script von Heinz aus und was muss ich noch manuell anpassen (z.B. den Pfadnamen)?
Viele Grüße.
Marcel
Bild

Betrifft: AW: Blattschutz für mehrere Dateien
von: haw

Geschrieben am: 22.12.2006 11:26:27
Hallo Marcel,
Sub BlattschutzSetzen()
Dim sSource$, iCount%, iCounter%
Dim wks As Worksheet
sSource = "C:\Daten\"
With Application.FileSearch
.NewSearch
.LookIn = sSource
.Filename = "*.xls"
.SearchSubFolders = True
.Execute
iCount = .FoundFiles.Count
For iCounter = 1 To iCount
Workbooks.Open Filename:=.FoundFiles(iCounter)
For Each wks In ActiveWorkbook.Worksheets
wks.Unprotect
wks.Protect Password:="xxx"
Next wks
ActiveWorkbook.Close True
Next iCounter
End With
End Sub

Hier einfach den Pfad unter sSource und das Passwort (dein Passwort anstatt xxx) anpassen
Gruß Heinz
Bild

Betrifft: AW: Blattschutz für mehrere Dateien
von: Marcel
Geschrieben am: 22.12.2006 11:38:45
Hallo Heinz,
super vielen Dank. Jetzt muss ich mich noch mehr als Laie outen. Gebe ich die Befehle als Makro in einer der Dateien ein, oder wo? Ich möchte ja mehrere Dateien eines Pfades gleichzeitig ändern.
Marcel
Bild

Betrifft: AW: Blattschutz für mehrere Dateien
von: haw

Geschrieben am: 22.12.2006 11:45:05
Hallo Marcel,
den Code gibst du in den Visual Basic Editor ein. In diesen kommst mit Alt und F11.
Du änderst die entsprechenden Strings (Pfad, Passwort)
Du setzt den Cursor in den Code und drückst die Taste F5. Dadurch wird das Makro gestartet. Wenn du einen gültigen Pfad eingegeben hast, wird in allen Excel-Dateien (wegen .Filename = "*.xls") jede Tabelle mit dem angegebenen Passwort geschützt. Sollten aber Dateien dabei sein, in denen es Tabellen gibt, die mit einem Passwort geschützt sind, entsteht ein Laufzeitfehler, aber laut deiner Aussage, sind ja alle ohne Passwort geschützt.
Gruß Heinz
Bild

Betrifft: AW: Blattschutz für mehrere Dateien
von: Marcel
Geschrieben am: 22.12.2006 12:00:14
Hallo Heinz,
vielen Dank und viele Grüße.
Marcel
 Bild
Excel-Beispiele zum Thema "Blattschutz für mehrere Dateien"
Kennwort für Blattschutz Blattschutz aufheben
Blattschutzdialog über VBA aufrufen Blattschutz für eine Serie von Tabellen setzen und aufheben
Blattschutz beim Speichern setzen Blattschutz setzen und dennoch mit AutoFiltern
Blattschutz aufheben, Daten eintragen, Blattschutz setzen Blattschutz für VBA-Einträge ausschließen
Blattschutz mit und ohne Passwort aufheben und setzen Spaltenweiser Blattschutz in Abhängigkeit des Anwendernamens