Listenbox mit Array füllen und sortieren

Informationen und Beispiele zu den hier genannten Dialog-Elementen:
ListBox
Bild

Betrifft: Listenbox mit Array füllen und sortieren
von: Manuel
Geschrieben am: 28.09.2015 21:28:19

Hey Leute,
wie schaffe ich es eine Listenfeld, welches ich mit einem Array fülle (hier nochmal vielen Dank an Beverly), sortiert in dem Listenfeld auszugeben?
Hier ist mein Code:

Public Sub Füllen1()
Dim arr() As Variant
Dim iRow, iRowU, BLetzte As Long
ListBox1.Clear
ListBox1.IntegralHeight = False
With Sheets("Tabelle20")
      BLetzte = IIf(IsEmpty(.Range("B65536")), .Range("B65536").End(xlUp).Row, 65536)
      For iRow = 9 To BLetzte
          If .Cells(iRow, 7) <> "" Then
              ReDim Preserve arr(0 To 6, 0 To iRowU)
              arr(0, iRowU) = .Cells(iRow, 1)
              arr(1, iRowU) = .Cells(iRow, 2)
              arr(2, iRowU) = .Cells(iRow, 3)
              arr(3, iRowU) = .Cells(iRow, 4)
              arr(4, iRowU) = .Cells(iRow, 5)
              arr(5, iRowU) = .Cells(iRow, 6)
              arr(6, iRowU) = .Cells(iRow, 7)
              'arr(7, iRowU) = .Cells(iRow, 8)
              'arr(8, iRowU) = .Cells(iRow, 9)
              iRowU = iRowU + 1
          End If
      Next iRow
  End With
On Error Resume Next
ListBox1.Column = arr
On Error Resume Next
ListBox1.IntegralHeight = False
ListBox1.ColumnWidths = "220 Pt;220 Pt;200 Pt; 100 Pt"
End Sub

Wäre super wenn ihr mir helfen könntet.
Danke und beste Grüße,
Manuel

Bild

Betrifft: AW: Listenbox mit Array füllen und sortieren
von: Manuel
Geschrieben am: 29.09.2015 12:57:29
Hat keiner einen Rat für mich?

Bild

Betrifft: AW: Listenbox mit Array füllen und sortieren
von: ChrisL
Geschrieben am: 29.09.2015 14:17:35
Hi Manuel
Sortiere die Liste, bevor du sie ins Array einliest.
Alternativ googeln, da gibt es diverse Lösungen, um Array zu sortieren. Ist aber m.E. ziemlich kompliziert.
cu
Chris

Bild

Betrifft: AW: Listenbox mit Array füllen und sortieren
von: JoWE
Geschrieben am: 29.09.2015 14:30:14
Hallo Manuel,
wozu das Array erstellen?
Du hast eine Tabelle mit Werten, die Du doch zunächst einfach sortieren könntest (kannst Du aber auch für Dein Makro mit dem Makrorekorder aufzeichnen und in Deinen Code einbauen).
Dann im Anschluss die Listbox füllen, z.B mit Listbox1.rowSource="Tabelle1!B1:E25"
Gruß
jochen

 Bild

Beiträge aus den Excel-Beispielen zum Thema "Listenbox mit Array füllen und sortieren"