Live-Forum - Die aktuellen Beiträge
Anzeige
Anzeige
HERBERS
Excel-Forum (Archiv)
20+ Jahre Excel-Kompetenz: Von Anwendern, für Anwender

Forumthread: Blatt in Abhängigkeit von Zellinhalt einblenden

Blatt in Abhängigkeit von Zellinhalt einblenden
18.10.2012 00:06:35
Zellinhalt
Hallo zusammen,
ich habe eine Excel-Tabelle mit mehreren Tabellenblättern.
Wenn die Excel-Datei geöffnet wird soll nur das 1.Tabellenblatt "Stammdaten" sichtbar sein.
Im 1. Tabellenblatt steht in den Zellen B8, B9, B10, B11 entweder ein "Nein" oder "Ja".
Wenn in die entsprechenden Zelle z.B. B8 ein "Ja" geschrieben wird sollte das Tabellenblatt "XYZ" eingeblendet werden.
Wenn in die entsprechenden Zelle z.B. B8 wieder ein "Nein" geschrieben wird sollte das Tabellenblatt "XYZ" ausgeblendet werden.
Über Eure Hilfe bin Ich dankbar
W.Brendow

Anzeige

7
Beiträge zum Forumthread
Beiträge zu diesem Forumthread

Betreff
Datum
Anwender
Anzeige
AW: Blatt in Abhängigkeit von Zellinhalt einblenden
18.10.2012 00:21:09
Zellinhalt
Hallo,
Teil 1 mit dem Start kann ich dir erfüllen
'Diesen Code in Diese Arbeitsmappe
Private Sub Workbook_Open()
Dim blatt As Object
With Application
.ScreenUpdating = False
.EnableEvents = False
.DisplayAlerts = False
Sheets("Stammdaten").Visible = True
For Each blatt In Sheets
If blatt.Name  ("Stammdaten") Then
blatt.Visible = xlVeryHidden
End If
Next blatt
.ScreenUpdating = True
.EnableEvents = True
.DisplayAlerts = True
End With
End Sub
Das Andere fehlen Angaben zu den Blattnamen, ich vermute B8 steuert BlattX B9 BlattY usw.oder?
das kann morgen wer Anderes machen
Matze

Anzeige
AW: Blatt in Abhängigkeit von Zellinhalt einblenden
18.10.2012 00:27:59
Zellinhalt
Blattname B8 "Tabelle2"
Blattname B9 "Tabelle3"
Blattname B10 "Tabelle4"
Blattname B11 "Tabelle4"
Gruß
Brendow

AW: Blatt in Abhängigkeit von Zellinhalt einblenden
18.10.2012 08:18:14
Zellinhalt
Hi Brendow,
https://www.herber.de/bbs/user/82173.xls
beim nächsten Mal: wenn du eine abgespeckte Beispielstruktur vorgibst und hochlädst, wird es für die Helfer viel einfacher - und du musst das nicht mehr auf deine Datei umstricken sondern kannst einfach C&P machen.
viel Spass!
Grüße,
Klaus M.vdT.

Anzeige
AW: Blatt in Abhängigkeit von Zellinhalt einblenden
18.10.2012 21:52:55
Zellinhalt
Dankeschön für die schnelle Hilfe
Gruß
Brendow

Danke für die Rückmeldung! owT.
22.10.2012 08:23:56
Klaus
.

AW: Blatt in Abhängigkeit von Zellinhalt einblenden
18.10.2012 08:33:29
Zellinhalt
Hallo
Ist eine unlogische Zuweisung der Tabellen.
B10 und B11 könnten unterschiedlich sein, was soll dann mit Tabelle4 geschehen?
Ich hab mal angenommen:
B8 =Tabelle1
B9 =Tabelle2
B10 =Tabelle3
B11 =Tabelle4
kannst du ja abändern
rechtsclick auf den Tabellenblattreiter "Stammdaten"
im neuen Fenster den Code reincopieren
Private Sub Worksheet_Change(ByVal Target As Range)
On Error GoTo Fehler
If Not Intersect(Target, Range("B8:B11")) Is Nothing Then
Select Case Target.Row
Case 8 'Tabelle1
If UCase(Target) = "JA" Then
Sheets("Tabelle1").Visible = True
ElseIf UCase(Target) = "NEIN" Then
Sheets("Tabelle1").Visible = xlVeryHidden
End If
Case 9 'Tabelle2
If UCase(Target) = "JA" Then
Sheets("Tabelle2").Visible = True
ElseIf UCase(Target) = "NEIN" Then
Sheets("Tabelle2").Visible = xlVeryHidden
End If
Case 10 'Tabelle3
If UCase(Target) = "JA" Then
Sheets("Tabelle3").Visible = True
ElseIf UCase(Target) = "NEIN" Then
Sheets("Tabelle3").Visible = xlVeryHidden
End If
Case 11 'Tabelle4
If UCase(Target) = "JA" Then
Sheets("Tabelle4").Visible = True
ElseIf UCase(Target) = "NEIN" Then
Sheets("Tabelle4").Visible = xlVeryHidden
End If
End Select
End If
Err.Clear
Fehler:
If Err.Number  0 Then MsgBox "Fehler: " & Err.Number & vbLf & Err.Description: Err.Clear
End Sub
gruß UweD

Anzeige
AW: Blatt in Abhängigkeit von Zellinhalt einblenden
18.10.2012 21:53:37
Zellinhalt
Dankeschön für die schnelle Hilfe
Gruß
Brendow
;

Forumthreads zu verwandten Themen

Anzeige
Anzeige
Anzeige
Anzeige
Entdecke relevante Threads

Schau dir verwandte Threads basierend auf dem aktuellen Thema an

Alle relevanten Threads mit Inhaltsvorschau entdecken
Anzeige
Anzeige

Infobox / Tutorial

Tabellenblätter in Abhängigkeit von Zellinhalt einblenden


Schritt-für-Schritt-Anleitung

Um ein Excel-Tabellenblatt in Abhängigkeit von einem Zellinhalt ein- oder auszublenden, kannst Du den folgenden VBA-Code verwenden. Dieser Code wird ausgeführt, wenn die Excel-Datei geöffnet wird und sorgt dafür, dass nur das erste Tabellenblatt sichtbar ist.

  1. Öffne die Excel-Datei.
  2. Drücke ALT + F11, um den VBA-Editor zu öffnen.
  3. Wähle im Projektfenster „Diese Arbeitsmappe“ aus.
  4. Füge den folgenden Code ein:
Private Sub Workbook_Open()
    Dim blatt As Object
    With Application
        .ScreenUpdating = False
        .EnableEvents = False
        .DisplayAlerts = False
        Sheets("Stammdaten").Visible = True
        For Each blatt In Sheets
            If blatt.Name <> "Stammdaten" Then
                blatt.Visible = xlVeryHidden
            End If
        Next blatt
        .ScreenUpdating = True
        .EnableEvents = True
        .DisplayAlerts = True
    End With
End Sub
  1. Speichere die Datei als Makro-fähige Excel-Datei (.xlsm).
  2. Schließe den VBA-Editor und teste die Datei.

Häufige Fehler und Lösungen

  • Fehler: Tabellenblätter erscheinen nicht
    Überprüfe, ob die Blattnamen im Code korrekt sind. Möglicherweise sind die Namen anders oder enthalten Leerzeichen.

  • Fehler: „xlVeryHidden“ funktioniert nicht
    Stelle sicher, dass Du die Datei im richtigen Format (.xlsm) speicherst, um Makros verwenden zu können.

  • Die Sichtbarkeit wird nicht wie gewünscht aktualisiert
    Vergewissere Dich, dass der zweite Teil des Codes in das „Stammdaten“-Blatt eingefügt wird:

Private Sub Worksheet_Change(ByVal Target As Range)
    On Error GoTo Fehler
    If Not Intersect(Target, Range("B8:B11")) Is Nothing Then
        Select Case Target.Row
        ' Hier den Code für jede Zeile einfügen
        End Select
    End If
    Err.Clear
    Fehler:
    If Err.Number <> 0 Then MsgBox "Fehler: " & Err.Number & vbLf & Err.Description: Err.Clear
End Sub

Alternative Methoden

Es gibt auch eine Möglichkeit, die Excel-Tabelle nur mit einer Tastenkombination einzublenden. Du kannst die Tastenkombination ALT + F8 verwenden, um das Makro auszuführen, das die Sichtbarkeit der Tabellenblätter steuert.

Ein weiteres Werkzeug ist die Verwendung von benutzerdefinierten Formeln, um bestimmte Blätter nur anzuzeigen, wenn bestimmte Bedingungen erfüllt sind. Dies erfordert jedoch eine tiefere Kenntnis von Excel-Formeln.


Praktische Beispiele

Angenommen, Du hast folgende Tabellenblätter:

  • Tabelle1: Sichtbar, wenn B8 „Ja“ ist
  • Tabelle2: Sichtbar, wenn B9 „Ja“ ist
  • Tabelle3: Sichtbar, wenn B10 „Ja“ ist
  • Tabelle4: Sichtbar, wenn B11 „Ja“ ist

Hier ist ein Beispiel für den Code, der in das „Stammdaten“-Blatt eingefügt werden kann:

Private Sub Worksheet_Change(ByVal Target As Range)
    If Not Intersect(Target, Range("B8:B11")) Is Nothing Then
        Select Case Target.Row
        Case 8
            Sheets("Tabelle1").Visible = IIf(UCase(Target.Value) = "JA", True, xlVeryHidden)
        Case 9
            Sheets("Tabelle2").Visible = IIf(UCase(Target.Value) = "JA", True, xlVeryHidden)
        Case 10
            Sheets("Tabelle3").Visible = IIf(UCase(Target.Value) = "JA", True, xlVeryHidden)
        Case 11
            Sheets("Tabelle4").Visible = IIf(UCase(Target.Value) = "JA", True, xlVeryHidden)
        End Select
    End If
End Sub

Tipps für Profis

  • Nutze Fehlerbehandlungsroutinen, um unerwartete Fehler zu vermeiden und informative Nachrichten anzuzeigen.
  • Halte Deine Arbeitsmappe sauber und strukturiert, indem Du unnötige Blätter ausblendest, um die Benutzeroberfläche zu vereinfachen.
  • Überlege, wie Du Excel 3D Diagramme in Deine Blätter integrieren kannst, um die Datenvisualisierung zu verbessern, während Du die Sichtbarkeit von Tabellenblättern steuern möchtest.

FAQ: Häufige Fragen

1. Wie blende ich ein Excel-Blatt ein?
Verwende den Befehl Sheets("Blattname").Visible = True.

2. Was bedeutet „xlVeryHidden“?
Diese Einstellung macht das Blatt unsichtbar, sodass es nicht einmal über die Excel-Benutzeroberfläche sichtbar ist.

3. Kann ich auch mehrere Blätter gleichzeitig einblenden?
Ja, Du kannst eine Schleife verwenden, um alle gewünschten Blätter in einem einzigen Schritt sichtbar zu machen.

4. Welche Excel-Version benötige ich für VBA?
Die Nutzung von VBA ist in den meisten modernen Excel-Versionen (ab Excel 2007) verfügbar.

Beliebteste Forumthreads (12 Monate)

Anzeige
Anzeige
Entdecke mehr
Finde genau, was du suchst

Die erweiterte Suchfunktion hilft dir, gezielt die besten Antworten zu finden

Suche nach den besten Antworten
Unsere beliebtesten Threads

Entdecke unsere meistgeklickten Beiträge in der Google Suche

Top 100 Threads jetzt ansehen
Anzeige