Tabellenblätter ausblenden/einblenden

Bild

Betrifft: Tabellenblätter ausblenden/einblenden
von: Christian Schürhoff
Geschrieben am: 27.11.2015 13:02:47

Hallo zusammen,
in meiner Excel-Datei findet sich im ersten Tabellenblatt eine Übersicht über die weiteren Blätter. Durch ein "ja" hinter dem jeweiligen Tabellenblatt wird dies eingeblendet und bei einem "nein" ausgeblendet.
Der dahinterliegende Code sieht wie folgt aus:

Private Sub Worksheet_Change(ByVal Target As Range)

If Target.Address = "$D$6" Then
If Target = "nein" Then
Sheets("Projektentscheidung").Visible = xlHidden
Else
Sheets("Projektentscheidung").Visible = True
End If
End If

If Target.Address = "$D$7" Then
If Target = "nein" Then
Sheets("Aktionsliste").Visible = xlHidden
Else
Sheets("Aktionsliste").Visible = True
End If
End If

(...)
Nun würde ich gerne die Abfrage "Alle Arbeitsblätter einblenden" einfügen, sodass dort bei einem "ja" dies durchgeführt wird.
Da ich leider noch keinerlei VBA-Kenntnisse habe und der oben genannte Code auch nur durch Vorlagen entstanden ist, wäre ich über einen an meinem Problem angepassten Code sehr dankbar.
Beste Grüße
Christian

Bild

Betrifft: AW: Tabellenblätter ausblenden/einblenden
von: fcs
Geschrieben am: 27.11.2015 13:22:05
Hallo Christian,
man kann es mit Select Case etwas vereinfachen.
Gruß
Franz

Private Sub Worksheet_Change(ByVal Target As Range)
  Dim wks As Worksheet, strSheet As String
  strSheet = ""
  Select Case Target.Address(False, False, xlA1)
    Case "D6"
     strSheet = "Projektentscheidung"
    Case "D7"
      strSheet = "Aktionsliste"
    'usw.
    
    Case "D15" 'alle einblenden
      For Each wks In ThisWorkbook.Worksheets
        wks.Visible = xlSheetVisible
      Next
  End Select
  If strSheet <> "" Then
    Sheets(strshet).Visible = LCase(Target.Text) = "nein"
  End If
End Sub


 Bild

Beiträge aus den Excel-Beispielen zum Thema "Tabellenblätter ausblenden/einblenden"