Ausgabe der im Listenfeld selektierten Einträge

Hallo Experten,

ich suche gerade eine möglichkeit in einem Listenfeld mehrere selektierte Werte auszulesen…

Das Problem dabei ist eben, dass ich eine mehrfachauswahl habe und laut Excel-Hilfe da keine Möglichkeit besteht dass man die Angewählten Items dann auch ausgibt…
Aber vielleicht gibt es ja eine andere Möglichkeit dafür?

Ich wäre über alle Tipps dankbar…

vba möchte ich vermeiden, wenn es geht - aber naja… in der Not und so… :wink:

Grüße
Munich

Hallo Munich,

… in der Not und so… ist zum Auslesen der gewählten Listeeinträge erforderlich. Dies geht nur nur per VBA. Bei einem Listenfeld aus der Symbolleiste „Steuerelemente Toolbox“ geht es z.b mit einem der folgenden Makros

Private Sub ListBox2\_Change()
 'Listenfeld mit Mehrfachauswahl, alle gewählten Werte werden in die LinkedCell eingetragen
 With ListBox2
 If .LinkedCell = "" Then Exit Sub
 Dim I As Integer
 Dim Auswahl As String, Sep As String
 Sep = " : " 'Trennzeichen zwischen den Werten
 For I = 0 To .ListCount - 1
 If .Selected(I) = True Then
 If Auswahl = "" Then
 Auswahl = .List(I)
 Else
 Auswahl = Auswahl & Sep & .List(I)
 End If
 End If
 Next I
 ActiveSheet.Range(.LinkedCell).Value = Auswahl
 End With
End Sub

oder

Private Sub ListBox2\_Change()
 'Listenfeld mit Mehrfachauswahl, die gewählten Werte werden in die unterhalb der \_
 LinkedCell liegende Zellen eingetragen
 With ListBox2
 Dim I As Integer, Zeile As Integer
 'Alt-Einträge löschen
 Zeile = 1
 ActiveSheet.Range(.LinkedCell).Offset(Zeile, 0).Range(Cells(1, 1), Cells(.ListCount - 1, 1)).ClearContents
 'gewählte Einträge in Zellen eintragen
 For I = 0 To .ListCount - 1
 If .Selected(I) = True Then
 ActiveSheet.Range(.LinkedCell).Offset(Zeile, 0).Value = .List(I)
 Zeile = Zeile + 1
 End If
 Next I
 End With
End Sub

Gruß
Franz

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