Anzeige
Archiv - Navigation
812to816
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
812to816
812to816
Aktuelles Verzeichnis
Verzeichnis Index
Verzeichnis Index
Übersicht Verzeichnisse
Liste mit eindeutigen Werten
31.10.2006 10:34:10
Sina
Hallo,
ich möchte in einer UserForm eine ComboBox mit Kundennummern zur Auswahl füllen.
Leider sind in dem Tabellenblatt, aus dem ich die Kundennummern selektieren möchte, die Kundennummern nicht eindeutig.
Das heißt in Spalte D (Kundennummer) steht z.B. die Kundennummer 4711 5mal drin.
4712 13mal, etc.
Denn das Tabellenblatt enthält alle Kundenaufträge.
Nun bräuchte ich quasi eine Abfrage, die mir die Kundennummern anzeigt ohne die doppelten zu beachten.
In SQL würde ich das so machen:
"Select distinct SpalteD from Tabellenblatt"
Das Ergebnis würde ich dann über AddItem der ComboBox übergeben....
Wie mache ich das in Excel?
Vielen Dank für jede Art von Hilfe :-)
Sina

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

Betreff
Datum
Anwender
Anzeige
AW: Liste mit eindeutigen Werten
31.10.2006 10:55:33
Mac4
Hallo Sina,
so in der Art:
Dim zl
For zl = 1 To [D65536].End(xlUp).Row
If WorksheetFunction.CountIf(Range("D1:D" & zl), Cells(zl, "D")) = 1 Then
ComboBox1.AddItem Cells(zl, "D")
End If
Marc
Combobox Userform Unikate
31.10.2006 10:56:03
Beate
Hallo Sina,
in Zeile 1 liegt die Überschrift, Werte ab D2:

Private Sub UserForm_Initialize()
Dim lngx As Long
Me.ComboBox1.Clear
For lngx = 2 To Range("D65536").End(xlUp).Row
If Not Rows(lngx).Hidden And _
WorksheetFunction.CountIf(Range("D2:D" & lngx), Cells(lngx, 4)) = 1 Then
Me.ComboBox1.AddItem Cells(lngx, 4)
End If
Next
Me.ComboBox1.ListIndex = 0
End Sub

Gruß,
Beate
Anzeige
AW: Liste mit eindeutigen Werten
31.10.2006 10:57:15
Rudi
Hallo,

Private Sub UserForm_Initialize()
Dim i As Long
For i = 2 To Range("d65536").End(xlUp).Row
If WorksheetFunction.CountIf(Range(Cells(2, 4), Cells(i, 4)), Cells(i, 4)) = 1 Then
ComboBox1.AddItem (Cells(i, 4))
End If
Next
End Sub

Gruß
Rudi
AW: Liste mit eindeutigen Werten
31.10.2006 11:07:53
Ptonka
Hallo,
alernativ könntest Du auch mit jedem Aufruf der Userform in zwei Hilfsspalten den Spezialfilter einsetzen und von dort dann die Combobox füllen.
also:

Sub Spezialfilter_setzen
Range("D:D").AdvancedFilter Action:=xlFilterCopy, CriteriaRange:=Range( _
"E1:E2"), CopyToRange:=Columns("F:F"), Unique:=True
End Sub

Gruß,
Ptonka
Anzeige

301 Forumthreads zu ähnlichen Themen

Anzeige
Anzeige
Anzeige

Links zu Excel-Dialogen

Beliebteste Forumthreads (12 Monate)

Anzeige

Beliebteste Forumthreads (12 Monate)

Anzeige
Anzeige
Anzeige