Supportnet Computer
Planet of Tech

Supportnet / Forum / Tabellenkalkulation

UserForm ListBox





Frage

Hallo ist es möglich den Inhalt einer ListBox (UserForm) nach Datum zu sortieren? Gruß fedjo

Antwort 1 von coros

Hallo fedjo,

nur indem Du per VBA-Anweisung den Inhalt der Listbox löscht und dann die sortierten Daten erneut einliest.

MfG,
Oliver
Da hier der einzige Lohn für die Helfer eine Rückmeldung ist, wäre es nett, wenn Du
ein Feedback abgeben könntest, ob der Lösungsvorschlag Dein Problem gelöst hat.

Antwort 2 von fedjo

Hallo Coros,
danke für deine schnelle Antwort.
Ich habe jetzt die Datumsangaben in einer Hilfsspalte sortiert , sie werden dann durch Code in die ComboBox eingefügt.
Aber wie muss der Code verändert werden damit die Daten in der ComboBox nicht mehr nachträglich sortiert werden?

Gruß
fedjo

Private Sub UserForm_Initialize()
Dim ixCol As Integer
Dim ixRow As Long
Dim ixRowS As Long
Dim ixRowE As Long
Dim ixList As Integer
ixList = 0
ixCol = 12
ixRowS = 9
ixRowE = 514

ComboBox6.Clear
ComboBox6.AddItem ActiveSheet.Cells(ixRowS, ixCol).Value
For ixRow = ixRowS + 1 To ixRowE
If Not IsEmpty(ActiveSheet.Cells(ixRow, ixCol).Value) Then
For ixList = 0 To ComboBox6.ListCount - 1
If UCase(ComboBox6.List(ixList)) = UCase(ActiveSheet.Cells(ixRow, ixCol).Value) Then Exit For
If UCase(ComboBox6.List(ixList)) > UCase(ActiveSheet.Cells(ixRow, ixCol).Value) Then
ComboBox6.AddItem ActiveSheet.Cells(ixRow, ixCol).Value, ixList
Exit For
End If
Next ixList
If ixList = ComboBox6.ListCount Then
If UCase(ComboBox6.List(ixList - 1)) < UCase(ActiveSheet.Cells(ixRow, ixCol).Value) Then ComboBox6.AddItem ActiveSheet.Cells(ixRow, ixCol).Value
End If
End If
Next ixRow
End Sub

Antwort 3 von coros

Hallo fedjo,

sorry, aber ich weiß nicht, was Du mit Deiner Frage

Zitat:
Aber wie muss der Code verändert werden damit die Daten in der ComboBox nicht mehr nachträglich sortiert werden?


meinst.

MfG,
Oliver
Da hier der einzige Lohn für die Helfer eine Rückmeldung ist, wäre es nett, wenn Du ein Feedback abgeben könntest, ob der Lösungsvorschlag Dein Problem gelöst hat.

Antwort 4 von fedjo

Hallo Oliver,
die Datumsangaben wurden ja vorher schon in der Hilfsspalte sortiert . Nach dem Einfügen in die ComboBox sortiert der Code noch einmal, dadurch werden die Daten aber wieder umsortiert.

Gruß
fedjo

Antwort 5 von coros

Hallo fedjo,

die ganzen Abfragen kannst Du weglassen. Wenn Du die Daten bereits über eine Hilfsspalte sortiert hast, liest Du die Daten über eine Schleife mit

ComboBox6.AddItem ActiveSheet.Cells(.......


ein.

MfG,
Oliver
Da hier der einzige Lohn für die Helfer eine Rückmeldung ist, wäre es nett, wenn Du
ein Feedback abgeben könntest, ob der Lösungsvorschlag Dein Problem gelöst hat.

Antwort 6 von fedjo

Hallo Oliver,
es sollten aber auch keine doppelten Datumsangaben vorkommen.

Gruß
fedjo

Antwort 7 von coros

Hallo fedjo,

dann musst Du die über einen Code herausfiltern. Schau mal auf meiner HP in der Rubrik Beispieldateien und dort dann in dem Beispiel 31 nach. Im dem Beispiel wende ich gleich am Anfang des Codes bei der 1. Schleife so eine Filterfunktion an. Du musst diese natürlich an Deine Datei anpassen.

MfG,
Oliver
Da hier der einzige Lohn für die Helfer eine Rückmeldung ist, wäre es nett, wenn Du
ein Feedback abgeben könntest, ob der Lösungsvorschlag Dein Problem gelöst hat.

Antwort 8 von fedjo

Hallo Oliver,
ich habe es jetzt geschafft, die ComboBox funktioniert jetzt mit den Datumsangaben.

Danke noch mal für deine Hilfe.

Gruß
fedjo

Ich möchte kostenlos eine Frage an die Mitglieder stellen:


Ähnliche Themen:


Suche in allen vorhandenen Beiträgen: