listbox auswahl lässt sich nicht aufheben

Informationen und Beispiele zu den hier genannten Dialog-Elementen:
UserForm Frame Label ListBox
Bild

Betrifft: listbox auswahl lässt sich nicht aufheben
von: bassi
Geschrieben am: 01.11.2015 15:02:49

Halle liebe Exceler,
ich brüte seit gestern Mittag an einem Listboxproblem.
Vielleicht weiß hier jemand Rat?
Situation:
In Userform1 startet Listbox21 wenn in Zelle A1 kein Wert steht.
Nun wird eine Zeile in der Listbox angewählt und schreibt dieses in Zelle A1.
Gleichzeitig verschwindet die Listbox aus der Userform. Ein Button erscheint.
Wird dieser gedrückt wird der Wert aus A1 gelöscht, die Listbox erscheint wieder.
Die Prozedur wiederholt sich...
Nun soll die Listbox aber ohne den vorher selectierten Wert starten.
ListBox21.ListIndex = -1
sollte zum Erfolg führen.
Nix zu machen...
:-(
Egal wann ich das einfüge.
Beim Entladen der Listbox, beim Starten der Listbox, beim Starten oder Entladen der Userfom, beim Button klicken... ach... alles durch...
Mit F8 kann man sehen wie die Zeile angefahren wird - es passiert aber nichts in der Listbox... Geht darüber auf die nächste Zeile...
Hat vielleicht jemand eine Idee?
Viele Grüße
bassi

Bild

Betrifft: AW: listbox auswahl lässt sich nicht aufheben
von: Daniel
Geschrieben am: 01.11.2015 15:21:12
HI
kannst du die Datei mal hochladen?
dann können wir dir wahrscheinlich sofort sagen woran es liegt.
Gruss Daniel

Bild

Betrifft: eigener Betreff
von: WF
Geschrieben am: 01.11.2015 15:44:41
Hi,
etwas weiter unten steht drei mal:
"Ich habe immer eine perfekte Hilfe erhalten, drum"
Geht es da um anonyme Alkoholiker, Schwangerschaftsgymnastik; Excel; Kitesurfen ?
WF

Bild

Betrifft: AW: eigener Betreff
von: bassi
Geschrieben am: 01.11.2015 15:55:49
WF??? Worauf bezieht sich der Kommentar?
Kann ich nicht nachvollziehen...
Hallo Daniel,
ich hoffe du schlägst jetzt nicht die Hände über dem Kopf zusammen bei meinen Excelkünsten...
Kann man die Datei danach irgendwie wieder aus dem Netz nehmen? ist ja peinlich...
Die Beschreibung passt nicht so ganz dann. Es ist dann nicht Zelle A1 sonder S1.
Das ganze soll in ein bestehendes Projekt eingebaut und entsprechend angepasst werden. Von daher also nicht über die wirre Tabellenumsetzung wundern...
Vielen Dank fürs drübergucken.
Gruß bassi
https://www.herber.de/bbs/user/101173.xls

Bild

Betrifft: AW: eigener Betreff
von: Daniel
Geschrieben am: 01.11.2015 16:54:33
Hi
so ganz blick ich da nicht durch.
bei mir gibst manchmal auch seltsame Fehler.
vielleicht solltest du ein paar Dinge grundlegend bereinigen:
da die aufpoppende Userform2 modal ist, solltest du sie nicht nur "hiden" sondern auch vollständig mit Unload Me beenden.
im Prinzip ist es so, dass du, solange eine modale Userform geöffnet ist, du eigentlich nur in dieser Userform arbeiten kannst und darfst. Daher sollten sie auch vollständig wieder geschlossen werden, wenn du in die aufrufende Userform zurück willst. das "Hide" ist kein richtiges beenden und sorgt wahrscheinlich für seltsame Effekte.
auch solltest du möglichst keine Frames verwenden.
Frames sind mächtige Objekte und stellen quasi eine Userform innerhalb der Userform dar, was oft zu unerwarteten Effekten führt.
Wenns nur darum geht, einen Optischen Rahmen zu zeichen, ist man mit einem Label, dessen Hintergrund man auf "Transparent" setzt und mit einem Rahmen versieht, besser bedient.
wenn du weiterhin mit Frames arbeiten willst, dann reicht es zum Ein- und Ausblenden nur den Frame ein- oder auszublenden. Die darin enthaltenen Steuerelemente werden dann mit ein- oder ausgeblendet und du musst das nicht nochmal für jedes Steuerelement einzeln tun (wenn du mit dem Label arbeitest, musst du)
gruss Daniel

Bild

Betrifft: Probleme mit Listbox
von: Daniel
Geschrieben am: 01.11.2015 17:56:08
Was du auch noch beachten musst:
wenn du für die Listbox ein Click-Event hast, dann bedenke, dass dieses Click-Event auch dann ausgeführt wird, wenn du den ListIndex der Listbox per Makro veränderst!
sprich: nach dem Befehl: Listbox21.ListIndex = -1 springt das Makro in das Click-Event der Listbox21
da bei dir im Code des Click-Events der Befehl:
Listbox21.ListIndex = 1
steht, hat das zwei Effekte:
a) ein Listbox21.ListIndex = -1 an anderer Stelle wird zunichte gemacht
b) es besteht die Gefahr, dass du dich in einer Endlosschleife fängst
wenn du den ListIndex der Listbox per Code manipulieren willst, solltest du zum Abfragen einer Usereigabe nicht das CLICK-Event verwenden, sondern das MOUSE_UP-Event, welches dann nur auf den Mausklick reagiert.
wenn das mit dem Listbox21.Listindex = 1 ein Tippfehler ist und dort auch ein Listbox21.ListIndex = -1 stehen sollte, dann könntest du weiterhin mit dem Click-Event arbetein, müsstest dann aber an den Anfang des Click-Events den Befehl stellen:

IF Listbox21.ListIndex = -1 then Exit Sub

damit vermeidest du dann die Endlosschleife und weitere seltsam Effekte, wenn du per Code den ListIndex auf -1 stellst (der Anwender kann das nicht)
und noch ne kleinigkeit:
bei Start hat die Listbox immer den Wert, der im Eigenschftsfeld in bei Value eingetragen ist.
dieses Feld solltst du auch leer lassen.
Gruss Daniel

Bild

Betrifft: AW: Probleme mit Listbox
von: bassi
Geschrieben am: 01.11.2015 18:10:27
Oh, danke Daniel für die ausführliche Beschreibung. Für die geopferte Zeit. Ich bin begeistert.
Da werd ich mich morgen mit größten Freuden nochmal drüber her machen. Bin gespannt.
Ich werde berichten :-)
Besten Dank
Viele Grüße
bassi

Bild

Betrifft: AW: Probleme mit Listbox
von: bassi
Geschrieben am: 02.11.2015 17:18:35
Hallo Daniel,
wie versprochen eine Rückmeldung.
Du hattest mit all dem was du sagtest ins Schwarze getroffen.
Ich habe wirklich nur die Sachen korrigiert die du beschrieben hast und siehe da - es funktioniert tadellos.
Die Frames sind ausgetauscht.
Unload me ist korrigiert.
Das seltsame doppelt aufploppen der Userform2 wurde durch
IF Listbox21.ListIndex = -1 then Exit Sub
eliminiert.
Listbox21.ListIndex = 1 war tatsächlich ein Schreibfehler.
Der Value-wert in der Listbox? Was ich mir dabei gedacht hab weiß ich auch nicht... *augenroll*
Ich will dir nochmals herzlich danken.
Vor allem für die super Beschreibung / Erklärung. Ich sauge soetwas regelrecht auf. Ich lieeebe Excel :-)
Daniel - ich wünsche dir eine schöne Restwoche.
Viele Grüße
bassi

 Bild

Beiträge aus den Excel-Beispielen zum Thema "listbox auswahl lässt sich nicht aufheben"