692 Aufrufe
Gefragt in Tabellenkalkulation von
Hallo Excel-VBA-Profis,
in der Vergangenheit konnte ich in diesem Forum geholfen werden.
Ich habe nun folgendes Problem:
Wenn ich auf dem Makro-Button klicke, dann passiert folgendes:
1. Passwortschutz wird deaktiviert
2. Gruppierungen für 5 Tabellenblätter zugeklappt
3. Bestimmte Blätter werden versteckt
4. Andere Blätter bleiben eingeblendet
5. Passwortschutz wird aktiviert
Problem: selbst wenn die Exceltabelle mit einem PW geschützt ist, bin ich immer noch in der Lage die Gruppierungen aufzuklappen bzw. zuzuklappen. Genau das möchte ich nicht.
Zur info: Alle Zellen bleiben gesperrt (so wie es sein sollte).
Hier das geschriebene Makro:

Private Sub CommandButton1_Click()

'Passwortschutz wird deaktiviert
ActiveWorkbook.Unprotect Password:="test"
Dim i As Integer
For i = 1 To Sheets.Count
ActiveWorkbook.Sheets(i).Unprotect Password:="test"
Next

'Gruppierungen werden ausblendet
Sheet1.Outline.ShowLevels RowLevels:=1
Sheet2.Outline.ShowLevels RowLevels:=1
Sheet3.Outline.ShowLevels RowLevels:=1
Sheet4.Outline.ShowLevels RowLevels:=1
Sheet5.Outline.ShowLevels ColumnLevels:=1

'folgende Blätter werden versteckt
Sheet6.Visible = False
Sheet7.Visible = False
Sheet8.Visible = False
Sheet9.Visible = False
Sheet10.Visible = False

'folgende Blätter bleiben eingeblendet
Sheet1.Visible = True
Sheet2.Visible = True
Sheet3.Visible = True
Sheet4.Visible = True
Sheet5.Visible = True
Sheet11.Visible = True
Sheet12.Visible = True
Sheet12.Visible = True

'Passwortschutz wird aktiviert
Dim ii As Integer
For ii = 1 To Sheets.Count
ActiveWorkbook.Sheets(ii).Protect Password:="test"
ActiveWorkbook.Sheets(ii).Protect userinterfaceonly:=True, Password:="test"
ActiveWorkbook.Sheets(ii).EnableAutoFilter = True
ActiveWorkbook.Sheets(ii).EnableOutlining = True
Next

ActiveWorkbook.Protect Password:="test"
End Sub

Falls etwas undeutlisch ist, bitte melden.

Schon jetzt vielen lieben Dank.

Gruß,
Max

3 Antworten

0 Punkte
Beantwortet von m-o Profi (22.8k Punkte)
Hallo Max,

das Auf- und Zuklappen der Gliederung lässt du doch mit dieser Zeile in deinem Code zu:
ActiveWorkbook.Sheets(ii).EnableOutlining = True

Lösche die Zeile oder setze den Wert auf Falsch, dann kannst du die Gliederung auch nicht mehr aufklappen, wenn das Blatt geschützt ist.

Gruß

M.O.
0 Punkte
Beantwortet von
Hi M.O.

und wieder ein Mal bist Du der jenige, der mein Excel-Problem löst :-)

Gruß
Max
0 Punkte
Beantwortet von m-o Profi (22.8k Punkte)
Hallo Max,

gern geschehen ;-).

Gruß

M.O.
...