Bestimmte Arbeitsblätter zusammen anzeigen (andere ausblenden)
#1
Hallo,

ich muss neuerdings beruflich etwas mit VBA arbeiten und bin nach einer kleinen Schulung am verzweifeln.

Mein Dokument besteht aus sehr vielen Arbeitsblättern, darum wollte ich diese nur Gruppiert anzeigen lassen.

Auf dem Startarbeitsblatt habe ich die Funktion implementiert zu bestimmten Arbeitsblättern zu springen. Diese stellen eine Art Oberkategorie da und wenn man sich in einem solchen Arbeitsblatt befindet sollen lediglich wenige andere Arbeitsblätter unten in der Auswahl angezeigt werden. Der Rest soll ausgeblendet sein.

Mein Versuch:
Sub Anzeige()

If ActiveSheets = "Tabelle4" Then
  
Sheets("Tabelle1").Visible = False
Sheets("Tabelle2").Visible = False
Sheets("Tabelle3").Visible = False
Sheets("Tabelle6").Visible = False

Else
Sheets("Tabelle5").Visible = True...
End If
End Sub

Wenn mit der If-Bedingung überprüft wurde ob eine "Oberkategorie" ein aktives Blatt ist (da wo man hingesprungen ist), werden nur bestimmte Arbeitsmappen aktiv sein.

Leider funktioniert das in dem Rahmen nicht. 

Hat jemand vielleicht einen Vorschlag, wie man das hinkriegt und eventuell noch vereinfachen kann?
Liebe Grüße
Antworten Top
#2
Hallo,

das ginge z.B. nach diesem Muster.
Der Code gehört ins Codemodul von "DieseArbeitsmappe". Dazu im Code-Editor Doppelklick auf "DieseArbeitsmappe" und Code rechts ins Codefenster kopieren.
Code:
Private Sub Workbook_SheetActivate(ByVal Sh As Object)
Application.ScreenUpdating = False
'erst alle Blätter einblenden
For Each Worksheet In ThisWorkbook.Sheets
   Worksheet.Visible = True
Next Worksheet

Select Case ActiveSheet.Name
   Case "Tabelle1"
       Worksheets("Tabelle3").Visible = False
   Case "Tabelle2"
       Worksheets("Tabelle1").Visible = False
   Case Else
End Select
Application.ScreenUpdating = False
End Sub


Gruß Werner
[-] Folgende(r) 1 Nutzer sagt Danke an Werner.M für diesen Beitrag:
  • Neustarter
Antworten Top


Gehe zu:


Benutzer, die gerade dieses Thema anschauen: 1 Gast/Gäste