Zum Inhalt springen
View in the app

A better way to browse. Learn more.

Fachinformatiker.de

A full-screen app on your home screen with push notifications, badges and more.

To install this app on iOS and iPadOS
  1. Tap the Share icon in Safari
  2. Scroll the menu and tap Add to Home Screen.
  3. Tap Add in the top-right corner.
To install this app on Android
  1. Tap the 3-dot menu (⋮) in the top-right corner of the browser.
  2. Tap Add to Home screen or Install app.
  3. Confirm by tapping Install.

VB: ListView sortieren

Empfohlene Antworten

Veröffentlicht

Hi

hab da mal ein kleines Problem: Ich will in meinem ListView (6.0) zahlen sortieren, also ich hab in einem subitem die zahlen von 1-5000 wenn ich jetzt diese zahlen sortieren will macht er das anders als ich will: also nicht 1 2 3 4 5 6 7 8 9 sondern

1 10 100 1000 1001 1002... das selbe wenn ichs absteigend sortieren will...

weiß jemand wie ich das Problem lösen / umgehen kann?

Änder die Zahlen mit der Formatfunktion um.

format(meinezahl, "0000")

und fürge sie direkt Deinem ListView-Subitem. Die Anzahl der Nullen steht für die maximale Anzahl der Stellen in Deinen Zahlen.

ja aber das sieht doch bäh aus kann man da net einstellen das er es anders sortieren soll von der logik her? aber trotzdem danke das du geantwortet hast :)

hi,

ich hatte das problem auch einmal.

afair geht die listview davon aus, dass alle eintraege strings sind. diese ergeben in der sortierung nun einmal diese reihenfolge.

ich habe damals nichts gefunden, womit ich eine spalte der listview numerisch definieren konnte (evtl lohnt aber ein nochmaliges suchen, ist schon eine weile her...), und bin deshalb auf ein anderes steuerelement ausgewichen (far-point-spread, hat dafuer aber andere macken)

ListView, Far-Point-Spread, was für Exoten benutzt Ihr eigentlich? Einfache ListBox hätte es auch getan? IMHO

Originally posted by |roTekuGeL|

Hi

hab da mal ein kleines Problem: Ich will in meinem ListView (6.0) zahlen sortieren, also ich hab in einem subitem die zahlen von 1-5000 wenn ich jetzt diese zahlen sortieren will macht er das anders als ich will: also nicht 1 2 3 4 5 6 7 8 9 sondern

1 10 100 1000 1001 1002... das selbe wenn ichs absteigend sortieren will...

weiß jemand wie ich das Problem lösen / umgehen kann?

vielleicht hilft das?

http://groups.google.de/groups?q=listview+sortieren+zahlen&ie=UTF-8&oe=UTF-8&hl=de

Originally posted by LoneGunman

ListView, Far-Point-Spread, was für Exoten benutzt Ihr eigentlich? Einfache ListBox hätte es auch getan? IMHO

Listbox?!? neee Also ich brauch halt ein steuerelement das mehrere felder (Columns) hat und das hat eine Listbox nicht (CMIIW)

und ich glaub ich hab jetzt ne antwort gefunden... ich versuch morgen den vorschlag von Lonegunman mit Space's statt nullen das sieht besser aus und müsste die selbe funktionalität haben

Ich weiss nicht, ob deine Lösung funktioniert hat, aber der Windows Explorer nutzt nichts anderes als ein ListView um den Inhalt eines Verzeichnisses anzuzeigen, meine Erfahrungen dort sagen mir 10 kommt immer vor 9, da die 1 vor Leer kommt, mit 09 passt es aber.

Die Sortierung wird eben von einem Computer gemacht, und da geht es nunmal zeichenweise von links nach rechts, die Spalte kann ja alphanumerischen Inhalt haben.

Mich würde dennoch interessieren welcher deiner Versuche funktioniert hat.

Also als bsp.:


Private Sub Form_Load()

For i = 1 To 5000

LV.ListItems.Add , , Space(5 - Len(i)) & i

Next i

End Sub



Private Sub LV_ColumnClick(ByVal ColumnHeader As MSComctlLib.ColumnHeader)

If LV.SortOrder = lvwAscending Then

  LV.SortOrder = lvwDescending

Else

  LV.SortOrder = lvwAscending

End If

LV.Sorted = True

End Sub

...also wie gesagt statt mit nullen mit spaces

  • 1 Jahr später...

Hallo,

ich schreibe jetzt einfach mal auch in diesen Thread rein, auch wenn er schon uralt ist :-)

Also ich habe eine Listview und diese wird sortiert beim Klicken auf Spaltenüberschrift.

Allerdings soll als letzte Zeile immer eine Summenzeile angezeigt werden.

In der Summenzeile kann auch mal ein Durchschnittswert stehen. und wenn der dann kleiner als eine einzelne Ziffer in der Spalte ist, so steht dann diese summenleiste nicht mehr an letzter Stelle sonder an erster oder mittlerer...

Hat jemand eine Idee, wie man dieses Problem lösen kann.

Ich dachte mir, dass man nach dem Sortieren diese Summenzeile immer wieder an letzte Stelle verschiebt, aber ich weiß nicht so recht wie :-(

Vielen Dank,

Skorpion81

Archiv

Dieses Thema wurde archiviert und kann nicht mehr beantwortet werden.

Configure browser push notifications

Chrome (Android)
  1. Tap the lock icon next to the address bar.
  2. Tap Permissions → Notifications.
  3. Adjust your preference.
Chrome (Desktop)
  1. Click the padlock icon in the address bar.
  2. Select Site settings.
  3. Find Notifications and adjust your preference.