Live-Forum - Die aktuellen Beiträge
Anzeige
Archiv - Navigation
1600to1604
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

Mehrfachauswahl bei listboxen mit Zelleinträgen

Mehrfachauswahl bei listboxen mit Zelleinträgen
10.01.2018 10:19:34
Ivi
Hallo in die Community,
ich habe eine Frage bezüglich eines VBA Codes. Ich selbst bin erst in den Anfängen, was die VBA Codierung angeht, daher wollte ich fragen, ob jemand in diesem Forum weiß, wie ich meine Idee umsetzen könnte.
Ich arbeite derzeitig an einem Formular zur Fehlerbeschreibung. Ich habe in dem Formular mehrere listboxen integriert, die eine Mehrfachauswahl der vorgegebenen Elemente möglich machen.
Userbild
Der Nutzer ist dann in der Lage, eine Auswahl zu treffen und diese über einen commandbutton ins Tabellenblatt zu übertragen. Wichtig ist hierbei jedoch, dass die ausgewählten Elemente alle in eine Zelle kommen.
Userbild
Nun habe ich noch die Möglichkeit integriert, dass der Benutzer bestehende Einträge über einen weiteren commandbutton bearbeiten kann. Durch eine combobox kann der jeweilige Datensatz ausgewählt werden, welcher dann aus dem Exceltabellenblatt wieder in die userform übertragen werden soll.
Nun zu meiner Frage:
Wie programmiere ich, dass Excel Einträge in einer listbox entsprechend der Inhalte aus dem Tabellenblatt markiert werden, sodass ich diese nicht jedes Mal aufs neue auswählen muss.
Sozusagen von:
Userbild
Zu
Userbild
LG Ivi und vielen Dank im Voraus.

5
Beiträge zum Forumthread
Beiträge zu diesem Forumthread

Betreff
Datum
Anwender
Anzeige
AW: Mehrfachauswahl bei listboxen mit Zelleinträg.
10.01.2018 10:31:42
Daniel
Hi
U5 ist die Zelle mit den Texten.
die Texte in der Zelle sind mit dem Zeilenumbruch (Zeichen(10)) getrennt.
With Listbox1
for i = 0 to .ListCount - 1
.Selected(i) = (Instr(vbLF & Range("U5").Value & vbLF, vbLF & .List(i) & vbLF) > 0)
Next
End with
Gruß Daniel
AW: Mehrfachauswahl bei listboxen mit Zelleinträg.
10.01.2018 11:05:44
Ivi
Hallo Daniel,
vielen vielen Dank für deine schnelle Antwort. Ich habe jedoch weiterhin 2 Probleme.
Erstes Problem:
In der listbox wird immer nur einer der Einträge markiert. Das bedeutet, wenn ich bspw. in der Zelle "Lieferanten, Unternehmen und Staat" hatte, er nur "Unternehmen" markiert, nicht aber "Lieferanten" und "Staat". Woran könnte das liegen?
Zweites Problem:
Der Zellbezug von U5 richet sich ja je nach Auswahl des jeweiligen Datensatzes über die angesprochene Combobox. Demnach muss der Zellbezug je nach Auswahl variabel sein. Wie bekomme ich das hin?
Code
Ich habe mal Teile des Codes für die Speicherung und die Bearbeitung beigefügt, vllt hilft das ja.
Speichern Commandbutton (Teil)

Dim nqt As Long, stqt As String
With ListBox10
For nqt = .ListCount - 1 To 0 Step -1
If .Selected(nqt) = True Then stqt = .List(nqt, 0) & IIf(stqt = "", "", vbCrLf) & stqt
Next
Columns("A:Z").EntireColumn.AutoFit
End With
Sheets(3).Cells(Zeile, 21) = stqt
Bearbeiten Commandbutton (Teil)

Private Sub CommandButton3_Click()
If ComboBox1.ListIndex >= 0 Then
kim = Userform4.ComboBox1.ListIndex + 5
With UserForm1.ListBox10
For i = 0 To .ListCount - 1
.Selected(i) = (InStr(vbLf & Range("U5").Value & vbLf, vbLf & .List(i) & vbLf) > 0)
Next
End With
UserForm1.TextBox21 = Sheets(1).Cells(kim, 13)
Unload Me
UserForm1.Show
Else
MsgBox "Fehler-/Szenarionummer nicht vorhanden!", vbExclamation
End If
End Sub

Ich hoffe man kann meine Schritte nachvollziehen.
LG Ivi und danke im Voraus.
Anzeige
AW: Mehrfachauswahl bei listboxen mit Zelleinträg.
10.01.2018 11:59:20
Daniel
Hi
du musst darauf achten, dass in beiden Makros die gleichen Trennzeichen verwendet werden.
du hast hier einmal das vbCrLf und einmal vbLf und solltest dich für eines entscheiden (in Zellen nimmt man normalerweise das vbLF)
Ich habe für die Überprüfung das Trennzeichen mit einbezogen, damit die Inhalte auch dann richtig erkannt werden, wenn es vorkommt, dass ein Begriff Bestandteil eines anderen Begriffs ist (wie z.B. Wald - Urwald).
Wenn das nicht vorkommt, kannst du die Trennzeichen im Instr auch weglassen.
zu deinem zweiten Probelem:
das hast du doch an anderer Stelle in deinem Code bereits gelöst.
Dann sollte es dir nicht schwer fallen, meinen fixen Zellbezug durch deinen variablen zu ersetzen.
Das gehört meinem Verständnis nach bei bescheidenen VBA-Kenntnissen mit dazu.
Gruß Daniel
Anzeige
AW: Mehrfachauswahl bei listboxen mit Zelleinträgen
16.01.2018 14:21:33
Ivi
Hallo Daniel,
entschuldige meine verspätete Rückmeldung, aber ich habe mich erst jetzt wieder an mein Formular setzen können.
Du hattest geschrieben, dass ich dieses Problem bereits gelöst hätte, doch leider fällt der Groschen noch nicht. Bei mir ist der individuelle Zellbezug das Problem (also das "U5"). Ich habe nochmal meinen Code beigefügt, um den aktuellen Stand darzustellen.
Das Folgende soll umgekehrt werden.
(IST) - Von Combobox Mehrfachauswahl in eine Zelle

Dim AAA As Long, BBB As String
With Seite2.AuswahlFunktionsfehler
For AAA = .ListCount - 1 To 0 Step -1
If .Selected(AAA) = True Then BBB = .List(AAA, 0) & IIf(BBB = "", "", vbLf) & BBB
Next
Columns("A:Z").EntireColumn.AutoFit
End With
Sheets(2).Cells(kim, 9) = BBB
SOLL - Von einer Zelle in Combobox Mehrfachauswahl (Erste Idee, bei der ich nicht weiß wie ich es machen soll)

With Seite2.AuswahlFunktionsfehler
For AAA = 0 To .ListCount - 1
.Selected(AAA) = (InStr(vbLf & Range(kim, 9).Value & vbLf, vbLf & .List(AAA) & vbLf) _
> 0)
Next
End With
LG Ivi und vielen Dank im Voraus
Anzeige
AW: Mehrfachauswahl bei listboxen mit Zelleinträgen
16.01.2018 14:47:19
Ivi
Hallo Daniel,
vergiss was ich geschrieben habe, ich hab es doch geschafft. Kleiner Denkfehler.
Für diejenigen, welche noch interessiert sind, hier die Endlösung.

Dim AAA As Long
With Seite2.AuswahlFunktionsfehler
For AAA = 0 To .ListCount - 1
.Selected(AAA) = (InStr(vbLf & Sheets(2).Cells(kim, 9).Value & vbLf, vbLf & .List(AAA) &  _
vbLf) > 0)
Next
End With

300 Forumthreads zu ähnlichen Themen

Anzeige
Anzeige
Anzeige

Links zu Excel-Dialogen

Beliebteste Forumthreads (12 Monate)

Anzeige

Beliebteste Forumthreads (12 Monate)

Anzeige
Anzeige
Anzeige