Anzeige
Anzeige
HERBERS
Excel-Forum (Archiv)
20+ Jahre Excel-Kompetenz: Von Anwendern, für Anwender
Inhaltsverzeichnis

Formeln in mehreren Dateien per Batch schützen

Forumthread: Formeln in mehreren Dateien per Batch schützen

Formeln in mehreren Dateien per Batch schützen
31.01.2008 09:07:57
Bernd
Hallo zusammen,
Ich möchte gerne bei mehreren Excel-Dateien per Batch alle Formeln vor Veränderungen schützen, dass Passwort darf gerne identisch sein. Die Dateien befinden sich in unterschiedlichen Verzeichnisse, die exakten Dateipfade liegen mir vor. Schön wäre es, wenn man flexibel die zu schützenden Dateien bzw. auch ganze Verzeichnisse mit einer Art Dateiexplorer auswählen könnte.
Zusatzfrage: Ich würde gere auch bestimmte Zellbereiche in diesen Dateien (immer der identische Bereich), die sich innerhalb der Dateien immer auf dem 2. Registerblatt befinden, gerne ebenfalls per Batch mit bestimmten Eigenschaften versehen z.B. Hintergrundfarbe "Grün". Ist das auch möglich?
Gruß
Bernd

Anzeige

1
Beitrag zum Forumthread
Beitrag zu diesem Forumthread

Betreff
Datum
Anwender
Anzeige
AW: Formeln in mehreren Dateien per Batch schützen
31.01.2008 23:33:00
fcs
Hallo Bernd,
hier ein Beispiel. Der angezeigte Dateiauswahl-Dialog erlaubt auch Mehrfachselektion.
Das Password im Code für den Blattschutz, und den zu formatierenden Bereich im Blatt 2 muss du noch anpassen bzw. weitere Bereiche ergänzen.
Gruß
Franz

Sub aaTest()
Dim wb As Workbook, wks As Worksheet, Dateiliste As Variant
Dim iI As Integer, Zelle As Range
Dateiliste = Application.GetOpenFilename(Filefilter:="Excelfiles(*.xls),*.xls", _
Title:="Bitte gewünschte Exeldateien markieren und öffnen", MultiSelect:=True)
If IsArray(Dateiliste) Then
For iI = LBound(Dateiliste) To UBound(Dateiliste)
Set wb = Workbooks.Open(FileName:=Dateiliste(iI))
Application.ScreenUpdating=False
For Each wks In wb.Worksheets
wks.Unprotect Password:="TestPasswort"
For Each Zelle In wks.UsedRange
If Zelle.HasFormula = True Then
Zelle.Locked = True
Else
Zelle.Locked = False
End If
Next
If wks.Index = 2 Then
'Formatierungen im 2. Tabellenblatt
wks.Range("C2:F32").Interior.ColorIndex = 4
End If
wks.Protect Password:="TestPasswort"
Next
Application.ScreenUpdating = True
wb.Save
wb.Close
Next
Else
'Abbrechen wurde gewählt
Exit Sub
End If
End Sub


Anzeige
;

Forumthreads zu verwandten Themen

Anzeige
Anzeige
Anzeige
Anzeige

Beliebteste Forumthreads (12 Monate)

Anzeige
Anzeige
Anzeige