WS mit Diagramm über VBA ansprechen
04.05.2005 11:38:52
Torsten K.
zu folgendem Code habe ich 2 Fragen:
Private Sub Workbook_Open()
Application.ScreenUpdating = False
Dim ws As Worksheet
Dim Username As Integer
For Each ws In ThisWorkbook.Worksheets
If ws.Name <> "WARNING" Then
ws.Visible = True
Else
End If
Next ws
Sheets("Diagramm A").Visible = True
Sheets("Diagramm C").Visible = True
If Application.Username <> "GWS-GI" Then
Application.CommandBars("ply").Enabled = False
For Each ws In Me.Sheets
If ws.ProtectContents = True Then _
ws.Unprotect "TEST"
ws.Visible = xlSheetVisible
ws.EnableSelection = xlNoSelection
ws.Protect "TEST"
Next ws
Else
For Each ws In Me.Sheets
ws.Unprotect "TEST"
Next ws
End If
Sheets("WARNING").Visible = xlVeryHidden
Application.ScreenUpdating = True
End Sub
1. Warum muß ich beim Einblenden der WS mit Diagramm die WS separat ansprechen; warum funktioniert das nicht über die For-Each-Schleife?
2. In der EnableSelection-Schleife bleibt Excel hängen und markiert die Zeile "Next ws". Ich vermute, daß dies an den beiden WS mit Diagramm liegt, denn wenn ich die beiden rausschmeiße, läuft der Code durch. Wie muß ich diesen Teil des Codes anpassen, damit Excel auch die Diagramme in den WS vor dem Selektieren/Markieren schützt?
Für Eure Hilfe im voraus besten Dank.
Gruß
Torsten