Live-Forum - Die aktuellen Beiträge
Datum
Titel
18.04.2024 18:04:29
18.04.2024 16:33:24
Anzeige
Archiv - Navigation
1380to1384
Aktuelles Verzeichnis
Verzeichnis Index
Übersicht Verzeichnisse
Vorheriger Thread
Rückwärts Blättern
Nächster Thread
Vorwärts blättern
Anzeige
HERBERS
Excel-Forum (Archiv)
20+ Jahre Excel-Kompetenz: Von Anwendern, für Anwender
DropDown Feld (Combobox)
24.09.2014 08:49:33
Cindy
Hallo Ihr Lieben,
ich habe eine Arbeitsmappe mit ca 23 Tabellenblättern. Ich habe ein Deckblatt eingefügt und 23 CommandButtons eingefügt die, die Tabellenblätter ansprechen sollen beim Klick. Ich finde das aber persönlich super unübersichtlich und wollte nun statt den tausend CommandButtons ein DropDownfeld hinzufügen.
In diesem DropDownfeld müssen die Namen der Tabellenblätter auftauchen und per Klick geöffnet werden.
Hat vll. jemand ein gescheites Makro was mir bei meinem Problem hilft?
Das wäre wirklich Super...den im Internet habe ich absolut nix gefunden. Immer nur ähnliche Beiträge die aber nie das passende Makro enthalten.
Vielen Dank im Voraus

5
Beiträge zum Forumthread
Beiträge zu diesem Forumthread

Betreff
Datum
Anwender
Anzeige
AW: DropDown Feld (Combobox)
24.09.2014 09:02:33
hary
Moin
Hie ein Bsp. beim oeffnen werden die namen in die Cbo eingelesen. Nach Auswahl Blatt aktiviert.
https://www.herber.de/bbs/user/92781.xlsm
gruss hary

AW: DropDown Feld (Combobox)
24.09.2014 09:42:39
Cindy
Hallo Hary,
ich kann die Datei leider nicht öffnen, aufgrund diverser Sicherheitsvorkehrungen in meinem Coputer auf der Arbeit.
Ich kann das dann leider erst zuhause machen.
ich gebe dir dann morgen bescheid ob das alles so geklappt hat.
Vielen Dank schonmal für deine Hilfe
Lieben Gruß

AW: DropDown Feld (Combobox)
24.09.2014 14:20:34
Cindy
Ich habe die Lösung rausgefunden:
Ersteinmal muss eine Liste entworfen werden um dem DropDown Feld zu sagen welche Namen die
Tabellenblätter haben.
Dazu füge folgenden Code in ein Modul bei VBA ein:
Sub TabellenblattnamenAuflisten()
Dim shWorksheet As Worksheet
Dim shNewWorksheet As Worksheet
Set shNewWorksheet = ActiveWorkbook.Worksheets.Add
shNewWorksheet.Cells(1, 1).Value = "Liste der Tabellenblattnamen"
For Each shWorksheet In ActiveWorkbook.Worksheets
shNewWorksheet.Cells(Rows.Count, 1).End(xlUp).Offset(1, 0).Value = shWorksheet.Name             _
Next
shNewWorksheet.Columns(1).AutoFit
End Sub  

Anschließend in VBA auf F5 drücken. Somit wird das Marko ausgeführt!!!
Das Makro hat vorne an den Anfang ein neues Tabellenblatt eingefügt.
Kopiere diese Liste und füge Sie im Deckblatt vor die Spalte A ein.
( Im Anschluss kann die Spalte dann ausgeblendet werden)
1. Zeichne ein Steuerelement (Kombinationsfeld) ActiveX-ComboBox auf dein Tabellenblatt.
2. Rechtsklick auf die ComboBox - Eigenschaften
3. ListfillRange - Den Bereich wo deine Blattnamen stehen z.b. A5:A56.
4. Style - 2 fmStyleDropDownList
5. Doppelklick auf die ComboBox
6. Im Codefenster folgenden Code kopieren :

Private Sub ComboBox1_Change()
Worksheets(ComboBox1.Value).Activate
End Sub

P.S.: An dem Makros muss nix mehr geändert werden!!! Nur Copy und Paste....FERTIG!!!
Zum Schluss das eingefügte Tabellenblatt von VBA löschen (dieses wird nicht mehr benötigt)
Wenn irgendwann neue Tabellenblätter hinzugefügt werden, dann einfach in die ausgeblendete Spalte gehen und den namen des Tabellenblattes hinzufügen.
In den Eigenschaften der ComboBox muss ebenfalls unter ListfillRange Der bereich um die hinzugefügten Tabellenblätter erweitert werden.
Trotzdem vielen Dank :D

Anzeige
AW: DropDown Feld (Combobox)
24.09.2014 17:12:27
hary
Moin
Na ja, so geht's auch. Aber schau mal meine Bsp.-Mappe zu Haus an. ;-)
gruss hary

AW: DropDown Feld (Combobox)
24.09.2014 17:48:43
Ewald
Hallo,
falls von Interesse, es geht auch einfach so.
folgenden Code in die Tabelle mit der Combobox
Private Sub ComboBox1_Click()
ThisWorkbook.Sheets(ComboBox1.Value).Activate
End Sub
Private Sub ComboBox1_DropButtonClick()
Dim i As Long
ComboBox1.Clear
For i = 1 To ThisWorkbook.Sheets.Count
With ComboBox1
.AddItem Sheets(i).Name
End With
Next
End Sub
da brauchst du weder eine Tabelle noch eine Spalte mit den Tabellennamen, auch brauch bei Einfügen oder Löschen einer Tabelle nichts geändert werden.
Gruß Ewald
Anzeige

307 Forumthreads zu ähnlichen Themen

Anzeige
Anzeige
Anzeige

Links zu Excel-Dialogen

Beliebteste Forumthreads (12 Monate)

Anzeige

Beliebteste Forumthreads (12 Monate)

Anzeige
Anzeige
Anzeige