Wie kann man in Excel einen Wert aus einem Listenelement in eine Zelle schreiben?

1 Antwort

Vom Fragesteller als hilfreich ausgezeichnet

Makro;

Sub Listenfeld1_BeiÄnderung()
  
 Dim lst As Excel.ListBox
 Dim ws As Worksheet
 Set ws = ThisWorkbook.Worksheets(1)
 Set lst = ws.ListBoxes(1)
  wert = lst.Selected

For i = 1 To 3
Range("H" & i + 2) = wert(i)
Next i

End Sub

Formel in G8:

{=TEXTVERKETTEN(", ";1;WENN(H3:H5;G3:G5;""))}

Bild zum Beitrag

 - (Computer, Microsoft Excel, Office)
Bogeyman10 
Fragesteller
 24.08.2021, 17:50

Danke für deine Antwort! Fehlt in dieser Zeile nicht etwas:   wert = lst.Selected ?

wert ist nicht definiert

0
Bogeyman10 
Fragesteller
 24.08.2021, 18:00
@augsburgchris

ich meinte, ob in der Zeile nicht etwas fehlt, da "wert" nicht als Dim definiert ist. Ich bekomme in dieser Zeile eine Fehlermeldung.

0
augsburgchris  24.08.2021, 18:03
@Bogeyman10

Da ich kein OPtion Explicit verwenden und meine Variablen nur sehr selten deklariere sollte das nichts ausmachen. Welche Excelversion hast du?

Ist die Listbox als Formularsteuerelement oder als AcitveX drin?

0
augsburgchris  24.08.2021, 18:23
@augsburgchris

OK wieder was dazu gelernt

Sub marine() 
 With ThisWorkbook.Worksheets("Tabelle1")
   For lListBox = 0 To ListBox1.ListCount - 1
     If ListBox1.Selected(lListBox) Then
      lZeile = lZeile + 1
      .Range("C" & lZeile).Value = ListBox1.List(lListBox, 0)
     End If
   Next lListBox
  End With
End Sub

Sollte dir die Werte in C1:C3 schreiben hier kannst du es dann auslesen.

0
Bogeyman10 
Fragesteller
 24.08.2021, 18:28
@augsburgchris

Es ist sehr nett von dir, dass du mir geholfen hast. Vielen Dank :)

0