AW: Abfrage - nur bestimmte Tabellenblätter anzeigen
08.06.2004 12:01:49
ANdreas
Hallo Andre,
beim Öffnen der Datei, wird eine UserForm eingeblendet.
Den Code dazu trägst Du in "DieseArbeitsmappe" ein:
Private Sub Workbook_Open()
Load UserForm1
UserForm1.Show
End Sub
So dann fügst Du eine neue UserForm ein. Darauf platzierst Du eine ListBox und einen CommandButton (optional über die ListBox noch ein Label mit dem Text "Auszublendene Blätter") und gibst folgenden Code für die UserForm ein:
Private Sub CommandButton1_Click()
Dim i%, j%
j = 0
For i = 0 To ListBox1.ListCount - 1
If ListBox1.Selected(i) = True Then
j = j + 1 'Merker für Anzahl ausgeblendete Sheets (1 muss mind. eingeblendet bleiben)
If j < ThisWorkbook.Sheets.Count Then _
Sheets(i + 1).Visible = xlSheetHidden
End If
Next i
Unload Me
End Sub
Private Sub UserForm_Initialize()
Dim i%
For i = 1 To ThisWorkbook.Sheets.Count
ListBox1.AddItem ThisWorkbook.Sheets(i).Name
Sheets(i).Visible = xlSheetVisible
Next i
ListBox1.Height = 200
ListBox1.MultiSelect = fmMultiSelectMulti
End Sub
Damit werden bei jedem Öffnen alle Blätter eingeblendet und in die Listbox übernommen. Alle Blätter, die man nun in der Listbox auswählt (MultiSelect ist an), werden mit Klick auf die Schaltfläche ausgeblendet.
Hoffe das hilft weiter,
Andreas