Live-Forum - Die aktuellen Beiträge
Anzeige
Archiv - Navigation
636to640
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
636to640
636to640
Aktuelles Verzeichnis
Verzeichnis Index
Verzeichnis Index
Übersicht Verzeichnisse
Inhaltsverzeichnis

ComboBox - doppelte Werte

ComboBox - doppelte Werte
12.07.2005 16:39:18
Florian
Hallo Excel-Freunde,
Die Antworten bisher zu dem Thema bringen mich leider nicht weiter, deswegen stelle ich die Frage hier einfach nochmal und schreibe gleiche mal meinen Code mit. Also ich befülle die ComboBox mit werten aus einem Bereich, den ich benannt habe. der Code sieht bisher so aus:
anz = ActiveSheet.UsedRange.Rows.Count
Dim r as Range
For Each r in Intersect(Range("Hautptauftr"), Range("1:" & anz))
if r " " Then
Userform.ComboBox1.AddItem r
End if
next r
Das ganze funktioniert auch so, aber ich habe die gleichen Werte eben relativ oft. Eine zweite Combobox wertet später dann alle Werte, die zu dem Wert aus der Combobox1 gehören aus.
kann mir jemand meinen Code irgendwie so erweitern, dass er die doppelten Werte nicht mehr anzeigt, ich bin da jetzt schon an meiner Grenze angekommen und versuche den ganzen Mittag rum mit geringem Erfolg.
Danke auf jeden Fall mal für die Hilfe,
Gruß
Florian M.

1
Beitrag zum Forumthread
Beitrag zu diesem Forumthread

Betreff
Datum
Anwender
Anzeige
AW: ComboBox - doppelte Werte
12.07.2005 17:16:59
Nepumuk
Hi,
die schnellste Methode:
Lese den Bereich, so es sich um eine einzelne Spalte handelt in ein Array ein. Beispiel
Public Sub test()
    Dim vArray As Variant
    vArray = Range(Cells(2, 1), Cells(Cells(Rows.Count, 1).End(xlUp).Row, 1))
End Sub

Damit wird die Spalte A von Zeile 2 bis zur letzten benutzten Zeile eingelesen.
Sortiere das Array z.B. mittels Quicksort. (Findest du in der Recherche)
Dann setzt du das erste Array in einer Schleife in ein zweites Array um, wobei du leere und Doppelte ausschließt. Dieses zweite Array kannst du dann in deine Combobox einlesen mit:
Private Sub UserForm_Activate()
    ComboBox1.List = Array2
End Sub

Gruß
Nepumuk
Excel & VBA – Beispiele
Anzeige

Links zu Excel-Dialogen

Beliebteste Forumthreads (12 Monate)

Anzeige

Beliebteste Forumthreads (12 Monate)

Anzeige
Anzeige
Anzeige