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

Forumthread: Tabellenblatt ein- bzw. ausblenden

Tabellenblatt ein- bzw. ausblenden
Gunnar
Hallo Zusammen,
vorerst wünsche ich allen ein gesundes, erfolgreiches und glückliches neues Jahr.
Nun meine Frage: Ich nutze den folgenden Code, um Tabellenblätter auszublenden, die gerade nicht aktiv sind. Die Tabellenblätter können aber aus einem Steuerungsblatt per Schaltfläche aktiviert werden.
Private Sub Worksheet_Deactivate()
Sheets("Tabelle1").Visible = False
End Sub

Ich würde gern mit einer Optionsschaltfläche auf dem jeweiligen Tabellenblatt steuern, ob das Blatt aktiv bleiben soll oder nicht. Kann mir jemand helfen?
Danke & Gruß
Gunnar
Anzeige

6
Beiträge zum Forumthread
Beiträge zu diesem Forumthread

Betreff
Benutzer
Anzeige
AW: Tabellenblatt ein- bzw. ausblenden
02.01.2012 15:19:50
Detlef
Hallo Gunnar,
wenn das Blatt weg ist, wäre auch dein Optionsschaltfläche weg.
Gruß Detlef
AW: Tabellenblatt ein- bzw. ausblenden
02.01.2012 16:19:29
Gunnar
Danke für den Hinweis & sorry, meine Anfrage war vielleicht etwas unvollständig formuliert:
Alle Tabellenblätter der Datei (egal ob ausgeblendet oder nicht) können über Schaltflächen in einem speziellen Tabellenblatt "Steuerung" mit folgendem Code angesteuert werden:
Sub Tabelle1()
Sheets("Tabelle1").Visible = True
Sheets("Tabelle1").Activate
ActiveSheet.Range("A1").Select
ActiveWindow.View = xlNormalView
End Sub
Im jeweiligen Tabellenblatt selbst, ist dann der "Deactivate-Code", der greift, sobald man das Tabellenblatt verlässt. Aus Übersichtlichkeitsgründen möchte ich die Entscheidung aber den jeweiligen Usern der Datei überlassen, welche der Tabellenblätter sie dauerhaft sehen wollen und welche nach Verlassen wieder verschwinden können. Das Ganze möglichst userfreundlich über eine Schaltfläche oder einen eingängigen Workaround.
Daher die Idee mit der Optionsschaltfläche. Ich könnte mir aber auch eine andere Art vorstellen - z.B., wenn in A1 eine 1 steht, bleibt das Blatt nach Verlassen eingeblendet, bei 0 wird es nach Verlassen ausgeblendet. Ich möchte faktisch den "Deactivate-Code" ein- und ausschalten können. Ich denke, das müsste über eine If-Then-Else-Schleife gehen, hab aber keine Ahnung, wie ich das mit einer Optionsschaltfläche oder einer Bedingung in einer Zelle verbinde.
Dank im Voraus & viele Grüße
Gunnar
Anzeige
AW: Tabellenblatt ein- bzw. ausblenden
03.01.2012 10:07:21
Gunnar
Hallo Detlef,
genau das meinte ich. Super!
Wenn du mir jetzt noch verrätst, wo ich in Office 2010 die CheckBox finde, dann wäre ich glücklich.
Bei Office 2003 gab es so eine Symbolleiste für Schaltflächen usw. die finde ich bei Office 2010 nicht mehr.
Muss ich die CheckBox per VBA-Code programmieren?
Danke & Gruß
Gunnar
Anzeige
AW: Tabellenblatt ein- bzw. ausblenden
03.01.2012 10:11:33
Reinhard
Hallo Gunnar,
Entwicklertools---Einfügen---...
Gruß
Reinhard
AW: Tabellenblatt ein- bzw. ausblenden
03.01.2012 11:01:22
Gunnar
Hallo Reinhard,
danke für den Tipp. Die Entwicklertools waren bei mir nicht installiert, daher konnte ich sie nicht finden. Und das interaktive Handbuch für den Wechsel von 2003 auf 2010 hat leider auch keinen Hinweis darauf gegeben.
Aber jetzt ist alles da.
Danke & Gruß
Gunnar
Anzeige
;

Forumthreads zu verwandten Themen

Anzeige
Anzeige
Anzeige
Anzeige
Anzeige
Anzeige

Infobox / Tutorial

Tabellenblätter ein- und ausblenden in Excel VBA


Schritt-für-Schritt-Anleitung

Um ein Tabellenblatt in Excel VBA auszublenden, kannst du den folgenden Code verwenden. Dieser wird im Code-Modul des jeweiligen Arbeitsblatts platziert:

Private Sub Worksheet_Deactivate()
    Sheets("Tabelle1").Visible = False
End Sub

Falls du ein Tabellenblatt einblenden möchtest, kannst du diesen Code in ein Modul einfügen:

Sub Tabelle1()
    Sheets("Tabelle1").Visible = True
    Sheets("Tabelle1").Activate
    ActiveSheet.Range("A1").Select
    ActiveWindow.View = xlNormalView
End Sub

Wenn du die Sichtbarkeit von Tabellenblättern dynamisch steuern möchtest, kannst du eine Bedingung in einer Zelle verwenden. Beispielsweise:

Private Sub Worksheet_Deactivate()
    If Range("A1").Value = 1 Then
        Sheets("Tabelle1").Visible = True
    Else
        Sheets("Tabelle1").Visible = False
    End If
End Sub

Häufige Fehler und Lösungen

  • Fehler: Das Tabellenblatt wird nicht ausgeblendet.

    • Lösung: Prüfe, ob der Code im richtigen Modul (z.B. im Arbeitsblattmodul) platziert wurde. Stelle sicher, dass der Blattname korrekt ist.
  • Fehler: Die Schaltfläche zum Einblenden funktioniert nicht.

    • Lösung: Stelle sicher, dass du den Code für das Einblenden korrekt in ein Standardmodul eingefügt hast und dass der Blattname genau übereinstimmt.

Alternative Methoden

Eine alternative Methode zum Ausblenden von Arbeitsblättern ist die Verwendung des „very hidden“-Status. Dies kannst du durch den folgenden Code erreichen:

Sub Tabelle1VeryHidden()
    Sheets("Tabelle1").Visible = xlSheetVeryHidden
End Sub

Um ein „very hidden“ Tabellenblatt wieder sichtbar zu machen, verwende:

Sub Tabelle1Einblenden()
    Sheets("Tabelle1").Visible = xlSheetVisible
End Sub

Diese Methode sorgt dafür, dass das Tabellenblatt nicht einmal über die Excel-Oberfläche sichtbar ist.


Praktische Beispiele

Angenommen, du hast mehrere Tabellenblätter und möchtest, dass nur bestimmte in der Leiste angezeigt werden. Du kannst eine Schaltfläche in einem Steuerungsblatt erstellen, die alle anderen Blätter ausblendet:

Sub AlleTabellenblaetterAusblenden()
    Dim ws As Worksheet
    For Each ws In ThisWorkbook.Worksheets
        If ws.Name <> "Steuerung" Then
            ws.Visible = False
        End If
    Next ws
End Sub

Mit dieser Funktion kannst du alle Tabellenblätter außer dem Steuerungsblatt ausblenden.


Tipps für Profis

  • Nutze die xlSheetVeryHidden-Eigenschaft, um sensible Daten zu verstecken, die nicht einfach wieder sichtbar gemacht werden können.
  • Experimentiere mit der ActiveWindow.View-Eigenschaft, um die Ansicht der Daten zu steuern, wenn das Blatt aktiviert wird.
  • Verwende Application.ScreenUpdating = False, um das Flackern beim Ausblenden von Blättern zu vermeiden.

FAQ: Häufige Fragen

1. Wie blende ich alle Tabellenblätter gleichzeitig aus? Du kannst eine Schleife verwenden, um alle Blätter außer dem Steuerungsblatt auszublenden. Siehe das Beispiel im Abschnitt „Praktische Beispiele“.

2. Kann ich ein ausgeblendetes Blatt wieder sichtbar machen? Ja, du kannst den Code für das Einblenden des Blattes verwenden oder im Excel-Fenster mit der rechten Maustaste auf die Registerkarte klicken und „Einblenden“ auswählen.

3. Wie finde ich die Entwicklertools in Excel 2010? Gehe zu „Datei“ > „Optionen“ > „Menüband anpassen“ und aktiviere das Kästchen für „Entwicklertools“. Danach kannst du die CheckBox in der Gruppe „Steuerelemente“ einfügen.

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