Live-Forum - Die aktuellen Beiträge
Datum
Titel
28.03.2024 21:12:36
28.03.2024 18:31:49
Anzeige
Archiv - Navigation
704to708
Aktuelles Verzeichnis
Verzeichnis Index
Übersicht Verzeichnisse
Vorheriger Thread
Rückwärts Blättern
Nächster Thread
Vorwärts blättern
Anzeige
HERBERS
Excel-Forum (Archiv)
20+ Jahre Excel-Kompetenz: Von Anwendern, für Anwender
704to708
704to708
Aktuelles Verzeichnis
Verzeichnis Index
Verzeichnis Index
Übersicht Verzeichnisse
Inhaltsverzeichnis

Doppelungen in ComboBox vermeiden und danach sorti

Doppelungen in ComboBox vermeiden und danach sorti
12.12.2005 12:54:05
reiner
Hallo Leute,
mit nachfolgendem Programmcode wird eine ComboBox „cboSuchen“ mit Daten gefüllt.
For Schleife = BereichAnfang To BereichEnde
If ActiveCell.Value &gt 1 Then cboSuchen.AddItem ActiveCell.Value
ActiveCell.Offset(1, 0).Select
Next
cboSuchen.ListIndex = 1
End If
Hier stellen sich noch 2 Probleme:
1. Ich habe leider noch keine Möglichkeit gefunden doppelte Einträge zu verhindern.
2. Die Einträge in „cboSuchen“ (ohne Doppelungen) sollen aufsteigend sortiert werden.
Ich kenne zwar eine Möglichkeit Einträge zu sortieren, jedoch wird nei der Sortierung die führende „0“ unterdrückt, was natürlich nicht passieren sollte.
Weiß jemand Rat?
mfg
Reiner

4
Beiträge zum Forumthread
Beiträge zu diesem Forumthread

Betreff
Datum
Anwender
Anzeige
AW: Doppelungen in ComboBox vermeiden und danach sorti
12.12.2005 12:56:58
Hajo_Zi
Hallo Reiner,
anlog diesem Beispiel.

Option Explicit
'   erstellt von Hajo.Ziplies@web.de
Private Sub UserForm_Initialize()
Dim StListe() As String
Dim Loletzte As Long
Dim LoI As Long
Loletzte = 65536
If Range("A65536") = "" Then Loletzte = Range("A65536").End(xlUp).Row
'Array Dimensionieren
ReDim Preserve StListe(1 To Loletzte)
For LoI = 2 To Loletzte
StListe(LoI - 1) = Cells(LoI, 1)
Next LoI
'   Liste  sortieren
Sort_A_Z StListe, LBound(StListe), UBound(StListe)  ' Lbound kleinster Wert,UBound Größter Wert
'   Liste in Listbox übertragen ohne Doppelte
ListBox1.AddItem StListe(1)
For LoI = 2 To Loletzte
If StListe(LoI) <> StListe(LoI - 1) Then ListBox1.AddItem StListe(LoI)
Next LoI
End Sub
Public Sub Sort_Z_A(SortArray, L, R)
'   sortieren von Z bis A
'   von GerdZ Herber.de
Dim I, J, x, y
I = L
J = R
x = SortArray((L + R) / 2)
While (I <= J)
While (SortArray(I) < x And I < R)
I = I + 1
Wend
While (x < SortArray(J) And J > L)
J = J - 1
Wend
If (I <= J) Then
y = SortArray(I)
SortArray(I) = SortArray(J)
SortArray(J) = y
I = I + 1
J = J - 1
End If
Wend
If (L < J) Then Call Sort_Z_A(SortArray, L, J)
If (I < R) Then Call Sort_Z_A(SortArray, I, R)
End Sub
Public Sub Sort_A_Z(SortArray, L, R)
'   sortieren von A bis Z
'   von GerdZ Herber.de
Dim I, J, x, y
I = L
J = R
x = SortArray((L + R) / 2)
While (I <= J)
While (SortArray(I) > x And I < R)
I = I + 1
Wend
While (x > SortArray(J) And J > L)
J = J - 1
Wend
If (I <= J) Then
y = SortArray(I)
SortArray(I) = SortArray(J)
SortArray(J) = y
I = I + 1
J = J - 1
End If
Wend
If (L < J) Then Call Sort_A_Z(SortArray, L, J)
If (I < R) Then Call Sort_A_Z(SortArray, I, R)
End Sub



Anzeige
AW: Doppelungen in ComboBox vermeiden und danach s
12.12.2005 13:14:49
reiner
Hallo Ha_Jo,
vielen Dank für den Beitrag ich werde ihn in das Makro "einbauen"
mfg
Reiner
AW: Doppelungen in ComboBox vermeiden und danach s
12.12.2005 13:22:25
Hajo_Zi
Hallo Reiner,
warum ist der Beitrag offen? Ich habe keine Frage gelesen.
Gruß Hajo
AW: Doppelungen in ComboBox vermeiden und danach s
12.12.2005 21:08:32
reiner
Hallo Hajo,
habe es leider versäumt den Beitrag zu beenden
Gruß Reiner

Links zu Excel-Dialogen

Beliebteste Forumthreads (12 Monate)

Anzeige

Beliebteste Forumthreads (12 Monate)

Anzeige
Anzeige
Anzeige