Das Archiv des Excel-Forums

Sortierung in ComboBox zweispaltig erfolgt falsch

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

Betrifft: Sortierung in ComboBox zweispaltig erfolgt falsch
von: Josef

Geschrieben am: 29.07.2008 09:13:46

Hallo!
mit folgendem Code werden in der cboNamen3 (ComboBox) die Werte sortiert. Ich habe jedoch in dieser CB einen zweispaltigen Eintrag. Es wird in dieser CB mit diesem code jedoch nur die erste spalte sortiert. und die zweite wird außer acht gelassen. Dadurch ensteht eine komplett falsche Zuordnung.
Wie und wo müßte ich hier bitte den Code so verändern, damit die zweite spalte mitsortiert wird?

Sortieren_CboN2 wird mit "Call Sortieren_CboN2" am Schluß des Codes von


Private Sub cboNamen3_Enter() eingefügt


Public Sub Sortieren_CboN2()
Dim i_Erster As Integer
Dim i_Letzter As Integer
Dim i_Aktuell As Integer
Dim i_Nächster As Integer
Dim s_buffer As String
With frmStellenplan.cboNamen3
If .ListCount = 0 Then Exit Sub
i_Erster = 0
i_Letzter = .ListCount - 1
For i_Aktuell = i_Erster To i_Letzter
For i_Nächster = i_Aktuell + 1 To i_Letzter
If .List(i_Aktuell) > .List(i_Nächster) Then
s_buffer = .List(i_Nächster)
.List(i_Nächster) = .List(i_Aktuell)
.List(i_Aktuell) = s_buffer
End If
Next i_Nächster
Next i_Aktuell
End With
End Sub


Danke
Josef

Bild

Betrifft: AW: Sortierung in ComboBox zweispaltig erfolgt falsch
von: Rudi Maintaire
Geschrieben am: 29.07.2008 09:29:22
Hallo,
die Daten der 2. Spalte musst du natürlich auch umschaufeln.


Public Sub Sortieren_CboN2()
Dim i_Erster As Integer
Dim i_Letzter As Integer
Dim i_Aktuell As Integer
Dim i_Nächster As Integer
Dim s_buffer1 As String
Dim s_buffer2 As String
With frmStellenplan.cboNamen3
If .ListCount = 0 Then Exit Sub
i_Erster = 0
i_Letzter = .ListCount - 1
For i_Aktuell = i_Erster To i_Letzter
For i_Nächster = i_Aktuell + 1 To i_Letzter
If .List(i_Aktuell, 0) > .List(i_Nächster, 0) Then
s_buffer1 = .List(i_Nächster, 0)
s_buffer2 = .List(i_Nächster, 1)
.List(i_Nächster, 0) = .List(i_Aktuell, 0)
.List(i_Nächster, 1) = .List(i_Aktuell, 1)
.List(i_Aktuell, 0) = s_buffer1
.List(i_Aktuell, 1) = s_buffer2
End If
Next i_Nächster
Next i_Aktuell
End With
End Sub


Gruß
Rudi

Bild

Betrifft: AW: Sortierung in ComboBox zweispaltig erfolgt falsch
von: Josef

Geschrieben am: 29.07.2008 09:32:48
Hallo Rudi!
Danke für Deine Antwort Deine Mühe und Deine Hilfe.
Hat mir sehr geholfen. Funktioniert bereits bestens.
Schönen Tag noch
Josef

Bild

Betrifft: AW: Sortierung in ComboBox zweispaltig erfolgt falsch
von: fcs
Geschrieben am: 29.07.2008 10:04:46
Hallo Josef,
du muss dann dann jeweils die 0. und 1. Spalte der Listbox beim Umsortieren neu zuweisen.
Ungetestet sieht der Code dann so aus.


Public Sub Sortieren_CboN2()
Dim i_Erster As Integer
Dim i_Letzter As Integer
Dim i_Aktuell As Integer
Dim i_Nächster As Integer
Dim s_buffer0 As String
Dim s_buffer1 As String
With frmStellenplan.cboNamen3
If .ListCount = 0 Then Exit Sub
i_Erster = 0
i_Letzter = .ListCount - 1
For i_Aktuell = i_Erster To i_Letzter
For i_Nächster = i_Aktuell + 1 To i_Letzter
If .List(i_Aktuell) > .List(i_Nächster) Then
s_buffer0 = .List(i_Nächster, 0)
s_buffer1 = .List(i_Nächster, 1)
.List(i_Nächster, 0) = .List(i_Aktuell, 0)
.List(i_Nächster, 1) = .List(i_Aktuell, 1)
.List(i_Aktuell, 0) = s_buffer0
.List(i_Aktuell, 1) = s_buffer1
End If
Next i_Nächster
Next i_Aktuell
End With
End Sub

Ansonsten im Archiv nach Sortierung von Comboboxen suchen. Da gibt es auch Lösungen für mehrspaltige Listen.
Gruß
Franz

 Bild

Excel-Beispiele zum Thema "Sortierung in ComboBox zweispaltig erfolgt falsch"

Sortierung mit Formel-Leerstrings am Ende download Nach Zelleingabe automatische Sortierung download
Durchgehende Sortierung mehrer nebeneinanderliegender Spalten download Automatische Sortierung bei Zelleintrag download
Sortierung nach Sortierfolge in zweitem Blatt download ComboBox als Symbol download
Alle ComboBoxes auf Position 1 download Werte in eine ComboBox einer UserForm übernehmen download
ComboBox in Abhängigkeit einer 2. ComboBox ein-/ausblenden download ComboBox mit Monatsnamen füllen download
Mehrspaltige ComboBox download ComboBox2 in Abhängigkeit von ComboBox1 bestücken download
Nur Zellen mit Inhalt in ComboBox listen download Neue UserForm bedingt nach ComboBox-Auswahl aufrufen download
Neues Element in ComboBox download Werteübernahme gem. Auswahl in ComboBox - ohne VBA download
Blätter in ComboBox-Feld einlesen und auswählen download Wert in einer CommandBarComboBox verändern download
ComboBox-Felder in UserForm aufklappen download UserForm-ComboBox-Feld nach Tasteneingabe aufklappen download
Wert aus 2. UserForm-ComboBox-Spalte berechnen download In einer ComboBox selektiertes Arbeitsblatt auswählen download
ComboBox in Abhängigkeit von einer CheckBox anzeigen download Adressfeld aus UserForm-ComboBox füllen download
Tages-ComboBox einer UserForm an den ausgewählten Monat anpassen download UserForm mit ComboBoxes durch VBA-Code erstellen download
ComboBoxes per VBA-Code in Tabellenblatt erzeugen download ComboBox für Monatsblattauswahl in Menüleiste einfügen download
Wert aus ComboBox in Tabelle eintragen download TextBox in Abhängigkeit einer ComboBox-Auswahl füllen download
Symbolleiste mit ComboBox erstellen download Werte in UserForm-ComboBox einlesen und ausgeben download
Ein- und ausblenden von Blättern gem. UserForm-ComboBoxes download Nach Tabellenblatt-ComboBox den vorher selektierte Bereich wählen download
Werte aus UserForm-ComboBox suchen und Fundstelle kopieren download Bei einer mehrspaltigen ComboBox Wert aus Spalte 2 als Startwert download
UserForm-ComboBoxes als Collection-Objekte ansprechen download Eintrag eines UserForm-ComboBox-Wertes in aktive Zelle download
Zweidimensionales Array an UserForm-ComboBox übergeben download In Abhängigkeit einer ComboBox-Auswahl eine ListBox füllen download
Wert aus ComboBox in TextBox, dann in Tabelle suchen download Summe aller Werte gem. ComboBox-Eintrag download
Geöffete Arbeitsmappen in Menü-ComboBox listen download Tabelle nach ComboBox-Auswahl durchsuchen download
Blattauswahl über eine UserForm-ComboBox download Dateinamen in UserForm-ComboBox einlesen und Datei öffnen download
Doppelt vorkommende Werte in einer UserForm-Combobox listen download Selektieren von über ComboBox-Felder ausgewählten Werten download
Nach Artikelauswahl in ComboBox Preis ermitteln download Wert in ComboBox einlesen, suchen, editieren, ausgeben download
Liste ohne Doppelte Werte in ComboBox einlesen download ComboBox-Breiten während der Laufzeit festlegen download
Im TextFeld einer UserForm-ComboBox Wert aus 2 Spalten anzeigen download Bei Aktivieren eines Arbeitsblattes ComboBox neu einlesen download
Beim Öffnen der Arbeitsmappe Menü-ComboBoxes anlegen download Werte in zweispaltiger ListBox rechts- und linksbündig darstellen download
Arbeitsmappe schliessen, wenn kein Eintrag in TextBox erfolgt download Durch VBA erfolgte Eintragung nach 30 Sekunden löschen. download
Bei falscher Eingabe alten Wert wiederherstellen download