HERBERS
Excel-Forum
20+ Jahre Excel-Kompetenz: Von Anwendern, für Anwender
Entdecke rund 2 Millionen Excel-Lösungen im
Forumsarchiv
Forumbeitrag
Excel-Version des Fragestellers:
2016
Erfahrungslevel des Fragestellers:
Excel-Profi - VBA gut
Chris
17.06.2026 14:36:17
AW: Gefiltertes Array in Listbox einlesen
Hallo Uwe,

etwas verspätet: Danke! Das funktioniert prima.

Bevor das gefilterte Array in der Lisbox ausgegeben wird, möchte ich das Array alphabetisch aufsteigend sortieren (Spalte A bzw. arrList(2,k).

Wie macht man das in einem Array? ...oder ist es besser, dies mit den Rohdaten im Sheet vorab zu machen?

LG
Chris
Als Antwort auf diesen Beitrag
Alwin Weisangler
03.06.2026 22:28:01
AW: Gefiltertes Array in Listbox einlesen
Hallo Chris,

auf die Schnelle und ungetestet so:


Sub FillListbox1()
Dim arrTab(), arrList(), i&, j&, k&, lz&, krit1$, krit2$
With Sheets("Rohdaten")
krit1 = Label1380.Caption
krit2 = Label450.Caption
lz = .Cells(.Rows.Count, "A").End(xlUp).Row
arrTab = .Range("A2:U" & lz).Value
End With
ReDim arrList(1 To 3, 1 To UBound(arrTab))
For i = 1 To UBound(arrTab, 1)
If arrTab(i, 1) = krit1 And arrTab(i, 4) = krit2 Then
k = k + 1
arrList(1, k) = arrTab(i, 7)
arrList(2, k) = arrTab(i, 8)
arrList(3, k) = arrTab(i, 21)
End If
Next i
ReDim Preserve arrList(1 To 3, 1 To k)
With ListBox1
.ColumnCount = 3
.ColumnWidths = "100;150;30"
.Column = arrList
End With
End Sub

Das Ausgabe-Array musst du mit vertauschten Dimensionen füllen, damit du mit Redim Preserve arbeiten kannst. Redim Preserve kann nur die letzte Dimension ändern.
In Folge dessen musst du die Listbox via .Column mit dem Ausgabe-Array füllen.

Gruß Uwe
Folgenachrichten
Antwort auf Beitrag erstellen
Bitte einen Anwendernamen ohne @ eingeben.
Bitte das Passwort eingeben.
Bitte eine gültige E-Mail-Adresse eingeben.
Bitte einen Betreff eingeben.
Weitere Optionen
Aktivieren, wenn die Frage/der Beitrag noch nicht beantwortet wurde und unter Listen > Offene Threads erscheinen soll.
Beispieldatei hochladen

Bitte einen Nachrichtentext eingeben.