Live-Forum - Die aktuellen Beiträge
Anzeige
Archiv - Navigation
1948to1952
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
Inhaltsverzeichnis

VBA - 2 Userforms m. Comboboxen

VBA - 2 Userforms m. Comboboxen
01.11.2023 15:15:42
Streicher
Hallo zusammen,

ich habe Probleme bei folgender Aufgabenstellung:
Ich möchte auf einem Arbeitsblatt zwei Buttons erstellen, die jeweils eine Userform mit Combobox starten. Diese Comboboxen sollen unterschiedlich mit jeweils einer Spalte aus 2 unterschiedlichen Tabellenblättern befüllt werden, also z.B:

Tabellenblatt1 - Button1 - Userform1 - Combobox1-befüllt mit Spalte A aus Tabellenblatt 2
Tabellenblatt1 - Button2 - Userform2 - Combobox2- befüllt mit Spalte A aus Tabellenblatt 3

Erstellen der Buttons + die 2 Userforms mit den Comboboxen aufzurufen ist nicht das Problem, ich scheitere beim befüllen der Comboboxen auf den unterschiedlichen Userforms.
Mit nur einer Userform funktioniert das befüllen mehrerer Comboboxen aus verschiedene Tabellenblättern gut, und zwar über:



Private Sub UserForm_Initialize()
combobox1.List = Range("intelligenteTabelle1[Spalte1]").Value
combobox2.List = Range("intelligenteTabelle2[Spalte1]").Value
End Sub

Mit einer 2. Userform kann ich aber zum einen keinen zweiten Userform_Initialize() Event aufrufen, bzw. macht VBA das zwar, aber die Liste in der Combobox2 stimmt dann einfach nicht, bzw. wird dann auch die Liste der Combobox1 angezeigt, was auch Sinn ergibt, da der Initialize-Event sicherlich nur einmal vorkommen darf.
Zum anderen kann ich auch nicht die 2. Zeile von oben


combobox2.List = Range("intelligenteTabelle2[Spalte1]").Value

einfach in Userform1 packen, da sich ja die Combobox auf Userfom2 befindet und somit die Variable combobox2 nicht erkannt wird...
Wahrscheinlich steh ich auf dem Schlauch, aber ich komme nicht mehr weiter...

Grüße,
Streicher

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

Betreff
Datum
Anwender
Anzeige
AW: VBA - 2 Userforms m. Comboboxen
01.11.2023 15:38:45
daniel
Jede Userform hat ihr eigenes Initialize-Event.
Im Initialize-Event der Userform1 befüllst du die Combobox der Userform1 und im Initialize-Event der Userform2 befüllst du die Combobox der Userform2

Eigentlich ganz einfach.

Oder du sparst dir den Code zum befüllen und vernüpfst die Comboboxen direkt mit den Zellbereichen.
Hierzu trägt man in der Eigenschaftsliste der Combobox die Adresse des Zellbereichs in die Eigenschaft RowSource ein.
Dies kann entweder sein:
- die Konkrete Adresse möglichst mit Blattnamen: 'Tabelle1'!a1:A9
- ein NAME, wenn du einen Zellbereich benannt hast.

Ob du die Bezeichnungen der intelligenten Tabelle direkt verwenden kannst weiß ich nicht, aber falls nicht, kannst du diesen erst einem normalen Namen zuweisen und dann diesen verwenden.

Gruß Daniel
Anzeige
AW: VBA - 2 Userforms m. Comboboxen
01.11.2023 15:38:48
onur
Wenn du, wie bei Blättern, die Userform mit angibst, auf der sich das Control befindet, bist du auf der sicheren Seite.
Nicht
combobox1.List
sondern (z.B.)
UserForm1.combobox1.List
AW: VBA - 2 Userforms m. Comboboxen
01.11.2023 15:57:41
Streicher
Es geht, ich bedanke mich herzlich !
Habe 2. Intitialize-Event aufgemacht und gebe da zusätzlich die Userform vorher mit an...
K.a. was ich da vorher falsch gemacht hab...

Danke nochmals und Grüße,
Streicher
Gerne !
01.11.2023 16:07:37
onur
Wie bei den Sheets: Wenn du dich im Modul von z.B. Userform1 befindest, sucht VBA sämtliche Controlnamen im Code wie ComboBox2, bei denen die Userformnamen nicht angegeben sind, immer nur auf Userform1.
Wie bei Telefonnummern. Wenn du einem Kölner deine Kölner Telefonnummer gibst, reicht die Nummer alleine. Wenn du aber z.B. in Hamburg Jemandem deine Nummer gibst, solltest du die Vorwahl mit angeben, da er sonst glaubt, es wäre eine Hamburger Nummer.
Anzeige
AW: Gerne !
01.11.2023 19:05:50
Streicher
Danke onur, das ist ein sehr anschauliches Beispiel, der Groschen ist gefallen denke ich...

Grüße

Links zu Excel-Dialogen

Beliebteste Forumthreads (12 Monate)

Anzeige

Beliebteste Forumthreads (12 Monate)

Anzeige
Anzeige
Anzeige