Clever-Excel-Forum

Normale Version: Zuweisung von Teilen von zweidimensionalem Array zu einer Combobox
Du siehst gerade eine vereinfachte Darstellung unserer Inhalte. Normale Ansicht mit richtiger Formatierung.
Seiten: 1 2
(21.02.2019, 10:44)Der Steuerfuzzi schrieb: [ -> ]Also bei mir funktioniert es. Application.Index(Array, ,1) ergibt die erste Spalte der Daten und Application.Index(Array, ,2) ergibt die zweite Spalte. Das funktioniert auch mit der Zuweisung an die List-Eigenschaft einer Combobox.

Vielleicht hast Du Zeilen und Spalten vertauscht?

Lade doch mal eine Beispieldatei hoch, damit man das Problem sehen kann.

Hier die Datei. Im Blatt "Daten" auf das Feld "Baugruppe einfügen", in der ersten Combobox "MAST1" auswählen und auf Fortfahren. In der 2. Userform sollten nun in der 1. Combobox alle Komponenten welche den gesuchen Begriff enthalten aufgeführt werden und in der 2. Combobox die dazugehörigen Adressen. Letztere brauche ich, um dann die Stückliste pro Mast auszufüllen, anhand der angegeben Anzahl. Die Komponenten in der 1. Box erscheinen, nicht so bei den dazugehörigen Adressen.
(21.02.2019, 10:35)snb schrieb: [ -> ]Die Antwort steht schon hier: https://www.clever-excel-forum.de/thread...#pid151536

und hier: https://www.snb-vba.eu/VBA_Arrays_en.html#L_6.0.3
Mit dem 2. Link konnt ich was anfangen, hat jetzt geklappt danke
Wie ich mir schon dachte, das Array ist zeilenweise angeordnet.
Demnach wäre das wohl die Lösung:
Code:
UserForm_Mast1.ComboBox1.List = Application.Index(komponenten, 1, 0)
UserForm_Mast1.ComboBox2.List = Application.Index(komponenten, 2, 0)

Mal ne blöde Frage: Warum füllst Du die zweite Kombobox mit der Zelladresse?
Exakt meine Gedanke ...
(21.02.2019, 12:23)Lopezoli schrieb: [ -> ]Hier die Datei. Im Blatt "Daten" auf das Feld "Baugruppe einfügen", in der ersten Combobox "MAST1" auswählen und auf Fortfahren. In der 2. Userform sollten nun in der 1. Combobox alle Komponenten welche den gesuchen Begriff enthalten aufgeführt werden und in der 2. Combobox die dazugehörigen Adressen. Letztere brauche ich, um dann die Stückliste pro Mast auszufüllen, anhand der angegeben Anzahl. Die Komponenten in der 1. Box erscheinen, nicht so bei den dazugehörigen Adressen.

Wie hier beschrieben, brauch ich die Adresse zur passenden Komponente, da ab 2 Spalten rechts davon die Stückliste ausgefüllt werden soll.

Danke für das .List
Die Adresse brauchst Du eigentlich nicht zum einfügen. Aber so ganz verstanden habe ich nicht, was Du vor hast. Was willst Du denn wo eintragen?
Verzichte auf 2 Userforms.

Füge ein Combobox zu ins ersten Userform.

Dann reicht nur diese Code:



Code:
Private Sub UserForm_Initialize()
   ComboBox1.List = Sheets("Werte").Range("A2:B9").Value
End Sub


Private Sub ComboBox1_Change()
    ComboBox2.List = Sheets("Daten").Cells(5, 1).CurrentRegion.Value
    combobox2.columncount=4
End Sub
Seiten: 1 2