Live-Forum - Die aktuellen Beiträge
Datum
Titel
16.10.2025 17:40:39
16.10.2025 17:25:38
Anzeige
Anzeige
HERBERS
Excel-Forum (Archiv)
20+ Jahre Excel-Kompetenz: Von Anwendern, für Anwender

Forumthread: Zeilenumbruch in ListBox

Zeilenumbruch in ListBox
Frank
Hallo und Guten Morgen, allen die nicht schlafen können, wollen oder wie ich es nicht dürfen!!!
Meine Frage: Kann ich in einem Listenfeld einen Zeilenumbruch hinbekommen?
Ausgangslage: Im Listenfeld werden Suchergebnisse angezeigt, wenn mehr Text vorhanden, als in die vorgesehene Spalte passt, sollte ein Zeilenumbruch erfolgen. Wie muss ich das anstellen wenn es denn überhaupt geht?
Danke!!!
Gruß Frank H.!!!
Anzeige

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

Betreff
Benutzer
Anzeige
AW: Zeilenumbruch in ListBox
23.03.2010 03:05:57
fcs
Hallo Frank,
mehrzeilige Darstellung der einzelnen Einträge im Listenfeld ist nicht möglich.
Je nach gewähltem Typ Listenfeld (wenn aus der Symbolleiste Steuerelemente-Toolbox) kannst du du aber die Eigenschaft ColumnWidths größer als Width einstellen und bei Bedarf horizontal scrollen.
Gruß
Franz
Anzeige
AW: Zeilenumbruch in ListBox
23.03.2010 03:54:09
Frank
Hallo Franz!!!
Danke für deine Antwort. Schade, dass es keine Möglichkeit zu geben scheint! Die Spaltenbreite zu vergrößern und zu scrollen war mir bekannt!
Gruß Frank H.
AW: Zeilenumbruch in ListBox
23.03.2010 11:33:36
Andreas
Hier Anbei eine Beisspiel, wie Daten aus einem Sheet einer Listbox eingespielt werden, so daß in einer Spalte mehrere Relationen oder eine/keins (Suchergebnisse) zu einer anderen Spalte/Argument (Suchbegriff) stehen/steht.
Die Suchergebnisse als String trennen und mit einem Zeilenumbruch "Chr(10)" wieder verheiraten und in ein Array schreiben. Wegen Datenschutz kann ich kein Beispiel als Bildschirm Hardcopy einstellen.
Aber so könnte es aussehen
Spalte 1...............Spalte 2
Suchbegriff...........Ergebnis
Liebe...................Liebe ist schön
............................Liebe ist sinnlich
............................Ein Kuß kann Liebe sein
Kuh......................Eine Kuh frisst Heu
............................Ein Stier ist keine Kuh
............................Die Kuh ist ein Nutztier
Function ReadDatasFromArrayToUserform1()
Dim i, n As Long
Dim oblog As Object
Dim Dateien() As String
Set oblog = ThisWorkbook.Sheets("Log")
UserForm1.ListBox1.Clear
UserForm1.ListBox1.ColumnCount = 4
UserForm1.ListBox1.ColumnWidths = 30 & ";" & 40 & ";" & 85 & ";" & 800
For i = 2 To EFZVUIS(oblog, 1) - 1
Erase Dateien
With oblog
UserForm1.ListBox1.AddItem CStr(i - 1) & "."
UserForm1.ListBox1.List(UserForm1.ListBox1.ListCount - 1, 1) = CStr(oblog.Cells(i, 1))
UserForm1.ListBox1.List(UserForm1.ListBox1.ListCount - 1, 2) = CStr(oblog.Cells(i, 2))
If InStr(CStr(oblog.Cells(i, 3)), Chr(10)) > 0 Then
Dateien = Split(CStr(oblog.Cells(i, 3)), Chr(10))
For k = 0 To UBound(Dateien())
UserForm1.ListBox1.List(UserForm1.ListBox1.ListCount - 1, 3) = CStr(Dateien(k))
If k = UBound(Dateien()) Then
Else
UserForm1.ListBox1.AddItem
End If
Next
Else
UserForm1.ListBox1.List(UserForm1.ListBox1.ListCount - 1, 3) = CStr(oblog.Cells(i, 3))
'UserForm1.ListBox1.AddItem 'Leere Zeile
End If
End With
Next
UserForm1.Show
Set oblog = Nothing
End Function

Anzeige
;
Anzeige
Anzeige

Infobox / Tutorial

Zeilenumbruch in Excel Listenfeld


Schritt-für-Schritt-Anleitung

  1. Liste vorbereiten: Stelle sicher, dass deine Daten in einem Excel-Arbeitsblatt vorliegen. Trenne die Daten, die in einem Zeilenumbruch angezeigt werden sollen, mit Chr(10) (das ist der Zeilenumbruch in VBA).

  2. UserForm erstellen: Füge eine UserForm in dein VBA-Projekt ein. Gehe dazu in den VBA-Editor, klicke mit der rechten Maustaste auf dein Projekt, wähle "Einfügen" und dann "UserForm".

  3. ListBox hinzufügen: Ziehe eine ListBox aus der Toolbox auf die UserForm. Benenne die ListBox beispielsweise ListBox1.

  4. Daten auslesen: Verwende den folgenden VBA-Code, um die Daten in die ListBox zu laden. Dieser Code sorgt dafür, dass die Einträge in der ListBox korrekt angezeigt werden, einschließlich der Zeilenumbrüche:

    Function ReadDatasFromArrayToUserform1()
       Dim i, k As Long
       Dim oblog As Object
       Dim Dateien() As String
       Set oblog = ThisWorkbook.Sheets("Log")
       UserForm1.ListBox1.Clear
       UserForm1.ListBox1.ColumnCount = 4
       UserForm1.ListBox1.ColumnWidths = "30;40;85;800"
    
       For i = 2 To EFZVUIS(oblog, 1) - 1
           Erase Dateien
           With oblog
               UserForm1.ListBox1.AddItem CStr(i - 1) & "."
               UserForm1.ListBox1.List(UserForm1.ListBox1.ListCount - 1, 1) = CStr(oblog.Cells(i, 1))
               UserForm1.ListBox1.List(UserForm1.ListBox1.ListCount - 1, 2) = CStr(oblog.Cells(i, 2))
    
               If InStr(CStr(oblog.Cells(i, 3)), Chr(10)) > 0 Then
                   Dateien = Split(CStr(oblog.Cells(i, 3)), Chr(10))
                   For k = 0 To UBound(Dateien())
                       UserForm1.ListBox1.List(UserForm1.ListBox1.ListCount - 1, 3) = CStr(Dateien(k))
                       If k < UBound(Dateien()) Then
                           UserForm1.ListBox1.AddItem
                       End If
                   Next
               Else
                   UserForm1.ListBox1.List(UserForm1.ListBox1.ListCount - 1, 3) = CStr(oblog.Cells(i, 3))
               End If
           End With
       Next
       UserForm1.Show
       Set oblog = Nothing
    End Function
  5. UserForm anzeigen: Starte die UserForm, um die ListBox mit den Daten anzuzeigen.


Häufige Fehler und Lösungen

  • Fehler: Zeilenumbrüche werden nicht angezeigt: Stelle sicher, dass du Chr(10) korrekt als Trennzeichen in deinen Daten verwendest. Überprüfe auch, ob die ListBox richtig konfiguriert ist.

  • Fehler: Daten werden nicht geladen: Vergewissere dich, dass der Verweis auf das Arbeitsblatt korrekt ist (in diesem Fall "Log"). Stelle sicher, dass die Funktion EFZVUIS korrekt definiert ist.


Alternative Methoden

Wenn du keinen Zeilenumbruch in der ListBox verwenden möchtest, kannst du auch die Spaltenbreite anpassen, um mehr Text sichtbar zu machen. Außerdem könnte eine ComboBox in Betracht gezogen werden, die mehr Flexibilität bei der Anzeige von Text bietet.


Praktische Beispiele

Angenommen, du hast folgende Daten:

Suchbegriff Ergebnis
Liebe Liebe ist schön
Liebe ist sinnlich
Ein Kuß kann Liebe sein
Kuh Eine Kuh frisst Heu
Ein Stier ist keine Kuh
Die Kuh ist ein Nutztier

Mit dem oben genannten VBA-Code kannst du diese Daten in einer ListBox anzeigen, wobei die Ergebnisse in einer Spalte mit Zeilenumbrüchen dargestellt werden.


Tipps für Profis

  • Nutze die Eigenschaft ColumnWidths, um die Sichtbarkeit der Daten zu verbessern. Experimentiere mit verschiedenen Breiten, um die besten Ergebnisse zu erzielen.

  • Verwende Hardcopy Excel, um Screenshots der UserForm anzufertigen und diese für Dokumentationen oder Präsentationen zu nutzen.

  • Achte darauf, dass das Design der UserForm benutzerfreundlich ist, damit die Benutzer die Daten leicht lesen können.


FAQ: Häufige Fragen

1. Kann ich mehrere Zeilen in einer ListBox anzeigen?
Ja, du kannst mehrere Zeilen mit Chr(10) als Trennzeichen in einer Zelle haben und diese dann in der ListBox anzeigen.

2. Was ist ein Spaltenumbruch in Excel?
Ein Spaltenumbruch ist eine Methode, um den Text in einer Zelle zu trennen, sodass er in mehreren Zeilen innerhalb der gleichen Zelle angezeigt wird.

3. Wie kann ich eine Bildschirmhardcopy der ListBox machen?
Du kannst die Snipping Tool oder die Drucktaste deiner Tastatur verwenden, um einen Screenshot von der UserForm und der ListBox zu erstellen.

4. Funktioniert das in allen Excel-Versionen?
Der Code sollte in den meisten modernen Excel-Versionen (ab Excel 2007) funktionieren. Achte darauf, die VBA-Einstellungen korrekt zu konfigurieren.

Beliebteste Forumthreads (12 Monate)

Anzeige
Anzeige
Entdecke mehr
Finde genau, was du suchst

Die erweiterte Suchfunktion hilft dir, gezielt die besten Antworten zu finden

Suche nach den besten Antworten
Unsere beliebtesten Threads

Entdecke unsere meistgeklickten Beiträge in der Google Suche

Top 100 Threads jetzt ansehen
Anzeige