Live-Forum - Die aktuellen Beiträge
Anzeige
Archiv - Navigation
1044to1048
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

listbox/combobox Verschachtelung

listbox/combobox Verschachtelung
30.01.2009 09:05:00
Abdi
Guten Morgen,
sorry, dass ich einen neuen Thread aufmache, aber konnte den im Archiv nicht mehr bearbeiten. Geht das überhaupt?
@Robert:
Zu Deiner letzten Frage.
Die Datei enthält alle Kategorien (Hauptkategorie; Unterkategoie 1+ 2). Die Bereiche haben alle einen Namen.
Jetzt wollte ich per VBA so eine Auswahl treffen:
Start:
Hauptkategorie in Listbox1
Auswahl aus Listbox1 ändert Inhalte in Listbox3
Auswahl aus Listbox2 ändert einträge in Listbox3.
Und da liegt der Hund begraben. Irgendwie klappt es mit der Listbox3 nicht. Ich mach irgendetwas falsch.
Es kommt immer der Fehler: Laufzeitfehler'380' Eigenschaft Listindex konnte nicht gesetzt werden.
Das liegt auch daran, dass wenn man den Code einzeln durchgeht, Listbox2 leer bleibt. Wieso auch immer.
Die Datei wollte ich nicht nocheinmal Hochladen.
Gruß Abdi

6
Beiträge zum Forumthread
Beiträge zu diesem Forumthread

Betreff
Datum
Anwender
Anzeige
AW: listbox/combobox Verschachtelung
30.01.2009 14:58:00
Christian
Hallo,
du willst die Datei nicht hochladen und sagst uns auch nicht, wo der alte Thread ist... wie soll man da denn antworten? Na schön, für interessierte Leser hier der Link zum alten Thread:
https://www.herber.de/forum/archiv/1040to1044/t1042880.htm
zu deiner Frage:
Im 'listbox2_Change' musst du prüfen, ob 'ListBox2.Value "" und nicht ListBox1.Value "".
Gruß
Christian
PS: alle Namen zu pflegen ist viel zu aufwendig - ich würde hier weder mit Namen noch mit RowSource arbeiten.
AW: listbox/combobox Verschachtelung
02.02.2009 12:13:03
Abdi
Hallo Christian,
danke für das Einfügen des alten Threads.
Mag sein, dass das Pflegen der Namen zu aufwendig ist und es auch eine Möglichkeit gibt ohne Namen und RowSource zu arbeiten. Jedoch, ich kommt doch nicht mal mit der hier klar.
Habe es geändert. Jedoch habe ich alle Namen gelöscht und erneut vergeben. Jetzt klappt´s soweit.
Nur eins nicht:
Beim Ersten Start werden alle 3 Listboxen angezeigt. Jedoch ist listbox3 leer. Sobald ich in Listbox2 auf etwas anderes klicke und wieder zurück, dann ist listbox3 gefüllt.
Wenn ich das Makro schrittweise durchgehe, bleibt listbox.value in dem Abschnitt listbos2_change leer.
Was mache ich falsch?
Gruß Abdi
Anzeige
AW: abhängige Listboxen
02.02.2009 14:33:00
Christian
Hallo Abdi,
bei jedem Wechsel musst du die alten Einträge der untergeordneten Listboxen löschen, bevor du sie mit den aktuellen Werten befüllst.
Das geht zB mit 'Clear', aber RowSource und Clear können nicht miteinander, daher musst du hier:
RowSource = "" setzen. Ebenso würde ich statt dem 'Change-Ereignis' das 'Click-Ereignis' verwenden.

Private Sub ListBox1_Click()
ListBox2.RowSource = ""
ListBox3.RowSource = ""
'.... hier dein restlicher Code
End Sub
Private Sub ListBox2_Click()
ListBox3.RowSource = ""
'.... hier dein restlicher Code
End Sub

Gruß Christian

Anzeige
AW: abhängige Listboxen
04.02.2009 09:19:00
Abdi
Hallo Christian,
Danke für Deine Hilfe.
Also das mit dem Löschen hat nicht so funktioniert.
So sieht´s Momentan aus:

Private Sub Userform_Initialize()
ListBox1.RowSource = "Grunddaten!B24:B45"
End Sub



Private Sub listbox1_click()
ListBox2.RowSource = ""
ListBox3.RowSource = ""
ListBox2.RowSource = ListBox1.Value
End Sub



Private Sub listbox2_click()
If ListBox2.Value  "" Then
ListBox3.RowSource = ListBox2.Value
ListBox3.ListIndex = 0
End If
End Sub


(An dieser Stelle auch ein Danke an Hajo...von dem ich den Gruncode habe!)
Jedoch weiß ich jetzt, was Du meintest "...würde ich nicht so machen..." usw. Es ist ein langer Weg bis man alle Namen hat...aber jetzt stehen sie.
Jetzt habe ich auch 2 Lösungen: eine per VBA und eine über Gültigkeiten.
Gruß Abdi

Anzeige
AW: abhängige Listboxen
04.02.2009 10:23:49
Christian
klar funktioniert das nicht, du hast ja die Zeile in ListBox2_Click vergessen.
PS: wenn du hier nur alle 2 Tage antwortest macht das wenig Sinn.
AW: abhängige Listboxen
04.02.2009 10:59:00
Abdi
Hi,
mein Fehler, ich meinte, so wie es jetzt steht, funktionert es. Da wird ja der Rowsource geleert.
Und wie schon erwähnt: Wenn mal die Namensbereiche definiert sind, sind Änderungen nicht mehr schwer.
Gruß Abdi

Links zu Excel-Dialogen

Beliebteste Forumthreads (12 Monate)

Anzeige

Beliebteste Forumthreads (12 Monate)

Anzeige
Anzeige
Anzeige