Die Einträge einer ListBox lassen sich ganz einfach sortieren, indem die Eigenschaft Sorted zur Entwicklungszeit auf True gesetzt wird. Mit nachfolgender Prozedur lässt sich eine ListBox blitzschnell sortieren. Für 1.000 Einträge benötigt der Code nur etwa 0,2 Sekunden. ' ListBox neu sortieren Public Function Liste_Sortieren(Liste As ListBox) Dim i As Long Dim x As Long Dim TMP As String Dim ARR() As String Dim bAdd As Boolean Dim nCount As Long ' alle Einträge in einen String speichern For i = 0 To Liste.ListCount - 1 TMP = TMP & Liste.List(i) & "¦¦" Next i If Len(TMP) > 0 Then TMP = Left$(TMP, Len(TMP) - 2) ' String splitten ARR() = Split(TMP, "¦¦") With Liste ' Liste löschen .Clear ' macht das Ganze noch etwas schneller .Visible = False ' alle Einträge des Arrays durchlaufen und ' sortiert in die ListBox schreiben nCount = UBound(ARR) For i = 0 To nCount bAdd = True For x = 0 To .ListCount - 1 If .List(x) > ARR(i) Then .AddItem ARR(i), x bAdd = False: Exit For End If Next x If bAdd Then .AddItem ARR(i) Next i ' Listendarstellung wieder einschalten .Visible = True End With End Function Die Funktion kann wie folgt aufgerufen werden: Private Sub cmdSortieren_Click() Call Liste_Sortieren(List1) End Sub Es ist natürlich auch möglich, viel mehr Einträge zu sortieren. Viel Spaß beim Sortieren! Dieser Tipp wurde bereits 42.000 mal aufgerufen.
Anzeige
Diesen und auch alle anderen Tipps & Tricks finden Sie auch auf unserer aktuellen vb@rchiv (einschl. Beispielprojekt!) Ein absolutes Muss - Geballtes Wissen aus mehr als 8 Jahren vb@rchiv! - nahezu alle Tipps & Tricks und Workshops mit Beispielprojekten - Symbol-Galerie mit mehr als 3.200 Icons im modernen Look Weitere Infos - 4 Entwickler-Vollversionen (u.a. sevFTP für .NET), Online-Update-Funktion u.v.m. |
Neu! sevPopUp 2.0 ![]() Dynamische Kontextmenüs! Erstellen Sie mit nur wenigen Zeilen Code Kontextmenüs dynamisch zur Laufzeit. Vordefinierte Styles (XP, Office, OfficeXP, Vista oder Windows 8) erleichtern die Anpassung an die eigenen Anwendung... Tipp des Monats Matthias Kozlowski Umlaute konvertieren Ersetzt die Umlaute in einer Zeichenkette durch die entsprechenden Doppelbuchstaben (aus ä wird ae, usw.) Access-Tools Vol.1 ![]() Über 400 MByte Inhalt Mehr als 250 Access-Beispiele, 25 Add-Ins und ActiveX-Komponenten, 16 VB-Projekt inkl. Source, mehr als 320 Tipps & Tricks für Access und VB |
||||||||||||||||
|
Microsoft, Windows und Visual Basic sind entweder eingetragene Marken oder Marken der Microsoft Corporation in den USA und/oder anderen Ländern. Weitere auf dieser Homepage aufgeführten Produkt- und Firmennamen können geschützte Marken ihrer jeweiligen Inhaber sein. |
|||||||||||||||||


ListBox-Einträge blitzschnell neu sortieren



