Live-Forum - Die aktuellen Beiträge
Datum
Titel
28.03.2024 21:12:36
28.03.2024 18:31:49
Anzeige
Archiv - Navigation
1528to1532
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

Wie Mehrfachauswahl in Listbox autom. verarbeiten

Wie Mehrfachauswahl in Listbox autom. verarbeiten
27.12.2016 11:54:02
Marc
Liebe VBA-Cracks,
ich möchte aus einer ListBox einen oder mehrere Werte auswählen und diese Auswahl dann automatisch weiterverarbeiten sobald ich die ListBox verlasse (Selektion einer 2. ListBox anhand der Auswahl). Bisher habe ich die Selektion mit einem separaten Button ausgelöst, das ist aber nicht so elegant...
Ich habe bereits eine gefüllte Listbox1 mit aktivierter Mehrfachauswahl. ListBox1_Change kann ich nicht verwenden, da keine Mehrfachauswahl möglich. Über ListBox1_Exit funktioniert das zwar einigermassen, aber offenbar löst VBA dann den Code für die Selektion aus irgendeinem Grund immer 2x aus?
Rudimentäres Code-Beispiel:

Private Sub ListBox1_Exit(ByVal Cancel As MSForms.ReturnBoolean)
dim Anz as integer
dim i as integer
Anz = 0
for i = 0 to  ListBox1.ListCount -1
if ListBox1.Selected(i) = true then
Anz = Anz + 1
end if
next i
Call WeiterverarbeitungsSub(Anz)
end sub

Habe ich da einen Denkfehler drin? Gibt es ein besseres Alternative zu Change und Exit?

3
Beiträge zum Forumthread
Beiträge zu diesem Forumthread

Betreff
Datum
Anwender
Anzeige
AW: Wie Mehrfachauswahl in Listbox autom. verarbeiten
27.12.2016 12:54:20
Gerd
Hallo Marc,
ungetestet:
Private Sub ListBox1_Exit(ByVal Cancel As MSForms.ReturnBoolean)
Dim Anz As Integer
Dim i As Integer
Static machnix As Boolean
If Not machnix Then
Anz = 0
For i = 0 To ListBox1.ListCount - 1
If ListBox1.Selected(i) = True Then
Anz = Anz + 1
End If
Next i
Call WeiterverarbeitungsSub(Anz)
machnix = True
End If
End Sub

Gruß Gerd
AW: Wie Mehrfachauswahl in Listbox autom. verarbeiten
27.12.2016 13:06:28
Marc
Hallo Gerd,
danke für die Rückmeldung. Das habe ich mir auch schon überlegt, habe einfach gedacht, dass es eine Standardlösung dafür geben sollte (auch wenn Dein Workaround so elegant wie nur möglich ist).
Und es würde mich schon noch interessieren, warum das Ganze 2x abgearbeitet wird...?
Ich werde es aber auf jeden Fall mal ausprobieren und gebe dann Rückmeldung, ob es geklappt hat.
Lg
Marc
Anzeige
AW: Wie Mehrfachauswahl in Listbox autom. verarbeiten
28.12.2016 10:17:06
Marc
Hallo Gerd,
habe es jetzt genau so gelöst, wie Du vorgeschlagen hast, funktioniert sehr gut.
Und wieso der Event mehrfach aufgerufen wurde, habe ich auch rausgefunden: Ich habe die ListBox1.Caption geändert und damit offenbar den Exit-Event nochmals aufgerufen. Somit alles gelöst, danke nochmals!
Lg
Marc

Links zu Excel-Dialogen

Beliebteste Forumthreads (12 Monate)

Anzeige

Beliebteste Forumthreads (12 Monate)

Anzeige
Anzeige
Anzeige