Listbox VB 5.0

Hallo,

ich habe eine Form, worauf sich 8 Listen befinden. Sie liegen übereinander. Und je nach Option die dann gewaehlt wird, wird eine von den 8 Listen sichtbar, die anderen 7 werden ausgeblendet.
Nun mein Problem. Wenn das programm irgendwas machen soll, so brauche ich immer die aktuelle Liste. Jedesmal die liste anhand der checkboxen und Optionsboxen die gewaehlt sind, herauszufinden waere eine menge schreibarbeit.
Ich habe folgendes probiert…

Private sub lala
dim c as control
dim eintraege as integer
c=aktiveliste
eintraege=c.listcount
'weitere Befehle folgen hier
end sub

public function aktiveliste() as control
on error resume next
dim c as control
dim b as string
for each c in ShowMusik
b=ucase(typename©)
select case b
case „LISTBOX“
if c.visible then
aktiveliste=c
exit function
end if
next
exit function

Die Form wo sich alles Befindet schimpft sich ShowMusik.
Bei der Zuweisung aktiveliste=c bekomme ich immer eine Fehlermeldung :-s
Weiss jemand wo da der fehler ist?

VLG Alex

Hallo Alex

Ich programmiere ‚nur‘ VBA, aber vielleicht hilft dir das ja trotzdem.

c=aktiveliste

Also in VBA müsste das SET c = aktiveliste heissen.

public function aktiveliste() as control
on error resume next

Und was passiert, wenn in deiner Funktion „aktiveliste“ ein Fehler auftritt??? Die Funktion wird „NULL“ oder sonst irgendeinen „Schrott“ zurückgeben.

for each c in ShowMusik

Hier müsste es in VBA SchowMusik.Controls heissen. Wo wird „ShowMusik“ eigentlich deklariert?

b=ucase(typename©)
select case b
case „LISTBOX“
if c.visible then
aktiveliste=c

Auch hier müsste es in VBA SET aktiveliste = c heissen

exit function
end if

Hier fehlt noch ein End Select.

Bei der Zuweisung aktiveliste=c bekomme ich immer eine
Fehlermeldung :-s

Es wäre hilfreich, wenn du die Fehlermeldung/Nummer mit posten würdest!

Gruss
Peter

Hallo Peter,

wie ich gerade sehe, hab ich ein teil vergessen :-s
Also…

For each c in ShowMusik.Controls ist korrekt. Aber das .controls musst man nicht unbedingt angeben :s

Ein Fehler kann eigentlich nicht auftreten, da immer eine Liste aktiv ist :smile:

ShowMusik ist das Formular wo sich die Listen drauf befinden.
Der fehler war, wie du richtig sagtest. Die Zuweisung muss lauten : set ShowMusik=c

Vielen Dank für deine rasche Hilfe :smile:

VLG Alex

[Bei dieser Antwort wurde das Vollzitat nachträglich automatisiert entfernt]