Anzeige
Anzeige
HERBERS
Excel-Forum (Archiv)
20+ Jahre Excel-Kompetenz: Von Anwendern, für Anwender

Forumthread: Tabellenblatt einblenden wenn Bedingung erfüllt

Tabellenblatt einblenden wenn Bedingung erfüllt
11.04.2016 12:49:07
Jones
Guten Tag zusammen,
ich versuche durch ein Formular Tabellenblätter einblenden zu lassen, wenn folgende Bedingung in der ListBox erfüllt ist. Wenn in der ListBox ein Text steht, soll sich das dazugehörige Tabellenblatt öffnen.
Das ist mein Ansatz bisher, jedoch ohne erfolg.

Private Sub CommandButton1_Click()
If ListBox2.Text = "1./L325" = True Then
ThisWorkbook.Worksheets("1.Bttr").Visible = True
End If
End Sub

Vielen lieben Dank schon mal im voraus.

Anzeige

4
Beiträge zum Forumthread
Beiträge zu diesem Forumthread

Betreff
Datum
Anwender
Anzeige
AW: Tabellenblatt einblenden wenn Bedingung erfüllt
11.04.2016 13:02:36
hary
Moin
Sollte so klappen.
Private Sub CommandButton1_Click()
Worksheets("1.Bttr").Visible = ListBox2.Text = "1./L325"
End Sub

gruus hary

AW:Tabellenblatt einblenden wenn Bedingung erfüllt
11.04.2016 13:19:37
Jones
Hey Hary,
danke schon mal für die schnelle Antwort. Jedoch funktioniert der Befehl auch nicht.
Es erscheint auch keine Fehlermeldung.
So sieht das Formular aus. Aus Gründen kann ich die Excel Datei nicht uploaden.
https://www.herber.de/bbs/user/104891.jpg
Gibt es noch einen anderen Lösungsvorschlag?
MfG

Anzeige
AW: AW:Tabellenblatt einblenden wenn Bedingung erfüllt
11.04.2016 13:45:46
hary
Moin
Dann versuch es mal so:
Private Sub CommandButton1_Click()
Dim i As Long
For i = 0 To ListBox2.ListCount - 1
Select Case ListBox2.List(i)
Case "1./L325": Worksheets("1.Bttr").Visible = True
Case "2./L325": Worksheets("2.Bttr").Visible = True
'--usw.
End Select
Next
End Sub

gruss hary

Anzeige
AW:Tabellenblatt einblenden wenn Bedingung erfüllt
11.04.2016 14:02:42
Jones
Top!!
Funktioniert ohne Probleme!
Danke Dir
;

Forumthreads zu verwandten Themen

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

Tabellenblatt einblenden bei erfüllter Bedingung


Schritt-für-Schritt-Anleitung

Um ein Excel-Tabellenblatt einzublenden, wenn eine bestimmte Bedingung erfüllt ist, kannst du den folgenden VBA-Code verwenden. Dieser Code wird ausgeführt, wenn ein Button in deinem Formular geklickt wird.

  1. Öffne die Excel-Arbeitsmappe, in der du das Formular erstellt hast.

  2. Wechsle in den VBA-Editor (drücke ALT + F11).

  3. Füge den folgenden Code in das entsprechende UserForm-Modul ein:

    Private Sub CommandButton1_Click()
       Dim i As Long
       For i = 0 To ListBox2.ListCount - 1
           Select Case ListBox2.List(i)
               Case "1./L325": Worksheets("1.Bttr").Visible = True
               Case "2./L325": Worksheets("2.Bttr").Visible = True
               ' Weitere Fälle hier hinzufügen
           End Select
       Next
    End Sub
  4. Schließe den VBA-Editor und teste das Formular, indem du die ListBox auswählst und den Button klickst.


Häufige Fehler und Lösungen

  • Fehler: Tabellenblatt wird nicht angezeigt

    • Stelle sicher, dass die Namen der Tabellenblätter im Code exakt mit den Namen in der Arbeitsmappe übereinstimmen.
  • Fehler: Keine Reaktion beim Klick auf den Button

    • Überprüfe, ob der Button korrekt mit dem Event CommandButton1_Click verknüpft ist.
  • Fehler: ListBox zeigt keine Einträge

    • Vergewissere dich, dass die ListBox korrekt gefüllt wird. Das kannst du im VBA-Editor überprüfen.

Alternative Methoden

Es gibt verschiedene Möglichkeiten, ein Excel-Tabellenblatt einzublenden:

  • Direktes Einblenden ohne Schleife: Wenn du nur ein spezifisches Blatt basierend auf einer Auswahl einblenden möchtest, kannst du den Code vereinfachen:

    Private Sub CommandButton1_Click()
       If ListBox2.Text = "1./L325" Then
           Worksheets("1.Bttr").Visible = True
       End If
    End Sub
  • Verwendung von Excel-Funktionen: Du könntest auch eine bedingte Formatierung oder andere Excel-Formeln verwenden, um die Sichtbarkeit von Inhalten zu steuern, anstatt VBA zu verwenden.


Praktische Beispiele

Hier sind einige Beispiele, wie du den Code für verschiedene Szenarien anpassen kannst:

  • Einblenden mehrerer Tabellenblätter:

    Case "1./L325": Worksheets("1.Bttr").Visible = True
    Case "2./L325": Worksheets("2.Bttr").Visible = True
  • Einblenden eines Blattes basierend auf einer anderen Bedingung:

    If SomeOtherCondition Then
       Worksheets("DeinBlatt").Visible = True
    End If

Tipps für Profis

  • Verwende xlSheetVisible für das Einblenden: Stelle sicher, dass du die Sichtbarkeit mit xlSheetVisible setzt, falls du das Blatt später wieder ausblenden möchtest.

  • Debugging: Nutze Debug.Print im VBA-Code, um die Werte der ListBox während der Ausführung zu überprüfen. Dies kann helfen, Probleme zu identifizieren.

  • Erweiterung des Codes: Du kannst den Code so erweitern, dass er auch andere Bedingungen berücksichtigt oder zusätzliche Funktionen bietet, wie das Ausblenden von Blättern.


FAQ: Häufige Fragen

1. Wie kann ich ein Tabellenblatt wieder ausblenden?
Du kannst den Visible-Wert auf xlSheetHidden setzen, um das Tabellenblatt auszublenden.

2. Funktioniert dieser Code in allen Excel-Versionen?
Ja, dieser VBA-Code sollte in den meisten modernen Excel-Versionen (Excel 2010 und höher) funktionieren.

3. Gibt es eine Möglichkeit, mehrere Blätter gleichzeitig einzublenden?
Ja, du kannst mehrere Case-Anweisungen im Select Case-Block hinzufügen, um mehrere Blätter gleichzeitig einzublenden.

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