Dieses Forum nutzt Cookies
Dieses Forum verwendet Cookies, um deine Login-Informationen zu speichern, wenn du registriert bist, und deinen letzten Besuch, wenn du es nicht bist. Cookies sind kleine Textdokumente, die auf deinem Computer gespeichert werden. Die von diesem Forum gesetzten Cookies werden nur auf dieser Website verwendet und stellen kein Sicherheitsrisiko dar. Cookies aus diesem Forum speichern auch die spezifischen Themen, die du gelesen hast und wann du zum letzten Mal gelesen hast. Bitte bestätige, ob du diese Cookies akzeptierst oder ablehnst.

Ein Cookie wird in deinem Browser unabhängig von der Wahl gespeichert, um zu verhindern, dass dir diese Frage erneut gestellt wird. Du kannst deine Cookie-Einstellungen jederzeit über den Link in der Fußzeile ändern.

ComboBox2 in Abhängigkeit von ComboBox1 befüllen
#1
ComboBox2 in der UserForm soll in Abhängigkeit von ComboBox1 befüllt werden:

In ComboBox1 steht zur Auswahl
Berlin
Leipzig
Hannover
Erfurt

ComboBox2 soll entsprechend Auswahl in ComboBox1 befüllt werden
Berlin  
    Karsten
    Olaf
    Ines
Leiipzig
    Tanja
    Sabine 
    Rene
Hannover
    Erwin
    Max
    Ilka
Erfurt
    Klaus
    Eva
    Heidi

Wie  muss der Code dafür aussehen?
Antworten Top
#2
Hallöchen,

So wie es angeordnet ist könntest Du mit dem Index des Eintrages arbeiten und der zweiten Combo einen Bereich zuweisen.

Im Prinzip

Combobox2.ListFillRange=Cells(Combobox1.Listindex*4+1,1).Resize(4,1).address
.      \\\|///      Hoffe, geholfen zu haben.
       ( ô ô )      Grüße, André aus G in T  
  ooO-(_)-Ooo    (Excel 97-2019+365)
Antworten Top
#3
Wie würde das ausformuliert aussehen?
Antworten Top
#4
Hallöchen,

so:

Code:
Private Sub ComboBox1_Change()
ComboBox2.ListFillRange = Cells(ComboBox1.ListIndex * 4 + 1, 1).Resize(4, 1).Address
End Sub


Angehängte Dateien
.xlsm   AbhängigeCombo.xlsm (Größe: 21,4 KB / Downloads: 4)
.      \\\|///      Hoffe, geholfen zu haben.
       ( ô ô )      Grüße, André aus G in T  
  ooO-(_)-Ooo    (Excel 97-2019+365)
Antworten Top
#5
Vielen Dank, aber ich habe mich sicher falsch ausgedrückt,
anbei die Datei mit UserForm, ohne Code.


Angehängte Dateien
.xlsm   Combibox2 in Abhängikeit Combibox1.xlsm (Größe: 17,15 KB / Downloads: 6)
Antworten Top
#6
Moin!
Vorweg finde ich den Aufbau der Datei suboptimal …  :21:

Aber egal, ins Modul der Userform:
Dialog UserForm1
Option Explicit 
 
Private Sub UserForm_Initialize() 
Dim wks As Worksheet 
For Each wks In Worksheets 
  ComboBox_Ort.AddItem wks.Name 
Next 
End Sub 
 
Private Sub ComboBox_Ort_Change() 
ComboBox_Name.Clear 
With Worksheets(ComboBox_Ort.Text) 
  ComboBox_Name.List = .Range(.Range("A2"), .Range("A2").End(xlDown)).Value 
End With 
End Sub 
 

Gruß Ralf
Gib einem Mann einen Fisch und du ernährst ihn für einen Tag. 
Lehre einen Mann zu fischen und du ernährst ihn für sein Leben. (Konfuzius)
Antworten Top
#7
Ralf, wie würdest du es besser machen?

Dieses Beispiel ist ein Auszug aus einem umfangreichen Formular welches über Userform befüllt wird.
Es gibt hierbei eine Hilfsdatei (Excel- Tabelle) in welchem die Standorte auf unterschiedlichen Tabellenblättern angelegt sind, in welchen die Mitglieder stehen (analog dem Beispiel).

Ich wollte dies nicht in das eigentliche Formular (versteckt) packen, damit diese Liste geändert werden kann, ohne das Formular anfassen zu müssen.

EDIT:
Wie müsste der Code geändert werden, wenn das ganze in einer anderen Exceldatei liegt als das Formular, aber im selben Ordner?
(Name z.B. Mitgliederliste)

EDIT2:
Wenn die "Mitgliederblätter" in der selben Excel- Datei wie das Formular sind, aber auch noch andere Tabellenblätter welche keine Mitglieder enthalten, wie kann ich es auf die Blätter Berlin / Leipzig / Hannover / Erfurt (bezogen auf dieses Beispiel) beschränken?
Antworten Top
#8
Ich habe die Lösung zur zweiten Variante auch hier angefragt.
Antworten Top
#9
Hola,

edit: obsolet.

Gruß,
steve1da
Antworten Top
#10
Ich beschreibe es nochmal anders...

Wie muss der Code aussehen um dieses zu realisieren?

"Apfel" / "Birne" / "Farbe" sind die Auswahlmöglichkeiten der ComboBox1 in der UserForm, sowie die Namen der Tabellenblätter in der Datei Auswahl.xls.

Im Tabellenblatt "Apfel" sind "Apfel1" / "Apfel2" / "Apfel3" aufgeführt.
(ab Zeile 2)
Im Tabellenblatt "Birne" sind "Birne 1" / "Birne2" / "Birne3" aufgeführt.
(ab Zeile 2)
Im Tabellenblatt "Farbe" sind "Farbe1" / "Farbe2" / "Farbe3" aufgeführt.
(ab Zeile 2)

Wird in ComboBox1 "Apfel" ausgewählt, soll in ComboBox2 "Apfel1" / "Apfel2" / "Apfel3" zur Auswahl stehen.
Wird in ComboBox1 "Birne" ausgewählt, soll in ComboBox2 "Birne1" / "Birne2" / "Birne3" zur Auswahl stehen.
Wird in ComboBox1 "Farbe" ausgewählt, soll in ComboBox2 "Farbe1" / "Farbe2" / "Farbe3" zur Auswahl stehen.

Bei Formularstart sollen beide ComboBoxen leer sein.

Das Formular soll in der Datei Formular.xlsm und der "Bezug" in der Datei Auswahl.xls enthalten sein.


Hinweis: Ich habe die Frage auch hier gestellt.
Antworten Top


Gehe zu:


Benutzer, die gerade dieses Thema anschauen: 1 Gast/Gäste