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

Forumthread: Tabellenblätter über Userform anwählen

Tabellenblätter über Userform anwählen
11.03.2006 13:30:45
Fuchs
Ich habe folgendes Problem:
Beim Öffnen einer Arbeitsmappe wird ein Userform angezeigt.
In diesem soll ein Listen- oder Kombinationsfeld enthalten sein, welches die Namen aller Tabellenblätter der Arbeitsmappe enthält. Bei Auswahl über das Listen- bzw. Kombinationsfeld, soll dann die entsprechende Tabelle angewählt werden.
Über Tipps bzgl. der Erstellung eines solchen Listenfeldes wäre ich sehr dankbar.
Gruß
Richard Fuchs
Anzeige

9
Beiträge zum Forumthread
Beiträge zu diesem Forumthread

Betreff
Datum
Anwender
Anzeige
AW: Tabellenblätter über Userform anwählen
11.03.2006 14:08:04
Ramses
Hallo
Erstelle eine UF mit einer Listbox
Benenne diese "Listbox1"
Doppelklick auf die Userform und diesen Code einfügen

Private Sub UserForm_Activate()
Dim i
For i = 1 To Worksheets.Count
With Me.ListBox1
.AddItem Worksheets(i).Name
End With
Next i
End Sub

Doppelklick auf die Listbox und diesen Code einfügen

Private Sub ListBox1_Click()
Worksheets(Me.ListBox1.Value).Select
Unload Me
End Sub

Gruss Rainer
Anzeige
@Ramses: Nachfrage
11.03.2006 16:15:21
Max
Hallo Ramses,
wenn es sich bei der Auswahl um ausgeblendete Blätter handelt, läßt sich in dem
Makro der Listbox noch "Visible = True" hinzufügen und wie sähe das Makro dann aus?
Vielen Dank für deine Mühe!
Gruß
Max
AW: @Ramses: Nachfrage
11.03.2006 19:09:38
Ramses
Hallo
eigentlich ganz einfach :-)
Du musst ja bloss prüfen, ob das Sheet sichtbar ist
Private Sub UserForm_Activate()
    Dim i
    For i = 1 To Worksheets.Count
        If Worksheets(i).Visible = True Then
            With Me.ListBox1
                .AddItem Worksheets(i).Name
            End With
        End If
    Next i
End Sub

Gruss Rainer
Anzeige
AW: @Ramses: Nachfrage
11.03.2006 20:25:31
Max
Hallo Rainer,
zunächst einmal danke für deinen Vorschlag!
Das Problem welches ich lösen wollte, ist weniger die Anzeige der Blätter. Im Makro
von Ramses werden alle Blätter angezeigt (leider auch die mit Status "very hidden").
Die Auswahl von ausgeblendeten Blättern geht nicht, da die bei der Auswahl in der
Listbox erst wieder auf "Visible = True" gesetzt werden müssen. Sonst gibt es einen
Fehler.
Mich interessiert diese Lösung deshalb, weil ich eine Arbeitsmappe mit diversen
ausgeblendeten Blättern habe, bei der sich die Anwender die Blätter auswählen sollen,
die sie brauchen.
https://www.herber.de/bbs/user/31814.xls
(Tabelle5 ist "very hidden", wird aber mit angezeigt und zur Auswahl angeboten)
Gruß
Max
Anzeige
AW: @Ramses: Nachfrage
11.03.2006 20:42:18
Leo
Hi,
etwas unklar, sollen nun nur sichtbare Blätter in der Listbox auftauchen oder auch ausgeblendete, die bei Auswahl eingebelendet werden sollen?
mfg Leo
AW: @Ramses: Nachfrage
11.03.2006 21:00:09
Max
Hi Leo,
ob da alle Blätter (wie in Rainer`s ersten Version) oder nur die ausgeblendeten
Blätter angezeigt werden ist egal.
Mir geht es darum, auch ausgeblendete Blätter mit dieser Auswahl zu öffnen.
Zu dem Listbox-Teil des Makro`s "Worksheets(Me.ListBox1.Value).Select" müßte irgendetwas
hinzugfügt werden, welches das ausgewählte Blatt auf "Visible=True" setzt.
Im Makro-Teil der Userform sollten Blätter mit "very hidden" unterdrückt werden.
Gruß
Max
Anzeige
Erledigt
11.03.2006 21:19:20
Max
Hi Leo,
danke für die Lösung, funktioniert hervorragend!
Allen Beteiligten noch ein schönes Wochenende...;-))
Gruß
Max
AW: Tabellenblätter über Userform anwählen
11.03.2006 20:59:52
Sanjoe
Hallo Fuchs
Wahrscheinlich kennst du diese Vorgehensweise
Wenn du in der linken unteren Seite des Arbeitsblattes auf die Blattverschiebungspfeile einenLinksklick machst hast du deine Liste der Arbeitsblätter und kannst diese auswählen und zu x springen, Ausgeblendete werden nicht angezeigt.
mfG Sanjoe
Anzeige
;

Forumthreads zu verwandten Themen

Anzeige
Anzeige
Anzeige

Infobox / Tutorial

Tabellenblätter über Userform anwählen


Schritt-für-Schritt-Anleitung

  1. Userform erstellen: Öffne deine Excel-Arbeitsmappe und gehe in den VBA-Editor (Alt + F11). Füge eine neue Userform hinzu.

  2. Listbox hinzufügen: Füge der Userform eine Listbox hinzu und benenne sie "ListBox1".

  3. Code zum Aktivieren der Userform: Doppelklicke auf die Userform und füge folgenden Code ein:

    Private Sub UserForm_Activate()
       Dim i As Integer
       For i = 1 To Worksheets.Count
           If Worksheets(i).Visible = True Then
               Me.ListBox1.AddItem Worksheets(i).Name
           End If
       Next i
    End Sub
  4. Code für die Auswahl der Tabellenblätter: Doppelklicke auf die Listbox und füge den folgenden Code ein:

    Private Sub ListBox1_Click()
       Worksheets(Me.ListBox1.Value).Visible = True
       Worksheets(Me.ListBox1.Value).Select
       Unload Me
    End Sub
  5. Userform anzeigen: Füge im Modul deiner Arbeitsmappe einen Code hinzu, um die Userform beim Öffnen der Arbeitsmappe anzuzeigen:

    Private Sub Workbook_Open()
       UserForm1.Show
    End Sub

Häufige Fehler und Lösungen

Fehler 1: Ausgeblendete Blätter werden nicht angezeigt

  • Lösung: Stelle sicher, dass die If Worksheets(i).Visible = True Bedingung im UserForm_Activate Code enthalten ist, um nur sichtbare Blätter anzuzeigen.

Fehler 2: Fehler beim Auswählen eines Blattes

  • Lösung: Füge vor der Zeile Worksheets(Me.ListBox1.Value).Select den Code Worksheets(Me.ListBox1.Value).Visible = True hinzu, um sicherzustellen, dass das Blatt sichtbar ist, bevor es ausgewählt wird.

Alternative Methoden

Anstelle einer Userform kannst Du auch ein einfaches Dropdown-Menü in der Excel-Oberfläche verwenden, um zwischen den Tabellensheets zu navigieren. Das Dropdown kann über die Entwicklertools mit einer Liste der Blätter gefüllt werden.


Praktische Beispiele

Ein Beispiel für eine Arbeitsmappe, die diese Methode verwendet, könnte eine Datei sein, in der verschiedene Datenblätter für verschiedene Abteilungen angezeigt werden. Über die Userform können die Benutzer dann schnell zwischen den Blättern wechseln, ohne manuell durch die Tabs navigieren zu müssen.


Tipps für Profis

  • Verwendung von Very Hidden Blättern: Um very hidden Blätter in die Auswahl aufzunehmen, musst Du den Sichtbarkeitsstatus im Code anpassen. Füge eine Logik hinzu, die diese Blätter temporär sichtbar macht, bevor sie ausgewählt werden.

  • Design der Userform: Achte darauf, die Userform ansprechend zu gestalten, indem Du Farben und Layouts anpasst, um die Benutzerfreundlichkeit zu verbessern.


FAQ: Häufige Fragen

1. Wie kann ich ausgeblendete Blätter in der Listbox anzeigen? Um ausgeblendete Blätter anzuzeigen, musst Du die Sichtbarkeit der Blätter im Code ändern, bevor Du sie in die Listbox einfügst.

2. Funktioniert dies auch in Excel 365? Ja, die oben genannten Schritte sind in allen modernen Excel-Versionen, einschließlich Excel 365, anwendbar.

3. Kann ich die Userform automatisch öffnen? Ja, indem Du den Code im Workbook_Open Ereignis einfügst, wird die Userform beim Öffnen der Datei automatisch angezeigt.

Beliebteste Forumthreads (12 Monate)

Anzeige
Anzeige
Anzeige