Clever-Excel-Forum

Normale Version: Doppelte Einträge ausfiltern
Du siehst gerade eine vereinfachte Darstellung unserer Inhalte. Normale Ansicht mit richtiger Formatierung.
Hallo,

ich fülle eine zweite Combobox und möchte die Mehrfach Ergebnisse nur 1x auflisten lassen.


Private Sub cboAuswahl_DropButtonClick()
Dim lngColumn As Long
       'cboAuswahl.Clear    'l?schen
  If cboAuswAuswahl.Listindex > -1 Then
    With Sheets("Elektronisches Schichtbuch")
  
      lngColumn = Application.Match(cboAuswAuswahl, .Rows(3), 0) ' Spalte ermitteln mit dem Inhalt aus CboAuswahl
      cboAuswahl.List = .Range(.Cells(4, lngColumn), .Cells(Rows.Count, lngColumn). _
End(xlUp)).Value
    End With
  
   
 
End Sub

hat jemand eine Idee wie ich das integrieren kann?

Gruß
Hallo,

so ...
Hallo,

sieht schonmal nicht schlecht aus.

Jetzt müsste das ganze nur auf 12 Spalten erweitert werden, und egal welche per Dropdown angewählt wird  den Inhalt für die anderen bestimmen.
So wie die Filterfunktion im Excel Tabellenblatt.


Gruß
Aber Hallo,
Zitat:sieht schonmal nicht schlecht aus.

ein klein wenig unverschämt ... oder ? Ich hab dir schon 300 % geliefert ...

Bei 12 Spalten würde selbst ich den Autofilter im Blatt verwenden.

Aber schau dir da mal die TextBoxen an ... mindestens 2 Buchstaben eingeben.
Hallo,

ok, hier mal meine Userform.

Eine Tabelle mit 12 Spalten Überschriften in Zeile 3 Spalte 1 und Inhalt ab Zeile 4 Spalte 1 Endlos.

Die Combobox "cboAuswahl" füllt sich je nach der Auswahl in der Combobox "cboAuswAuswahl" mit den entsprechenden Werten der ermittelten Spalte.

Wie bekomme ich es hin das die Combobox "cboAuswahl" keine doppelten Werte anzeigt.


Vielleicht kann mir ja jemand dort weiter helfen.

Die Teilsuche funktioniert auch nicht, und ich weis nicht warum ?
Hallöchen,

doppelte Daten in einem Array könnte man so vermeiden:

Code:
Sub ArrayOhneDup()
'Variablendeklarationen
Dim arrwerte(), i%
'Array fuellen
arrwerte = Array(1, 3, 5)
'Schleife ueber alle vorgegebenen Werte
For i = 1 To 5
  'Wenn der Wert noch nicht im Array ist, dann
  If (UBound(Filter(arrwerte, i)) = -1) Then
    'Arrayindex erweitern
    ReDim Preserve arrwerte(UBound(arrwerte) + 1)
    'neuen Wert hinzufuegen
    arrwerte(UBound(arrwerte)) = i
  'Ende Wenn der Wert noch nicht im Array ist, dann
  End If
'Ende Schleife ueber alle vorgegebenen Werte
Next
End Sub
Hallo André,

deine Bemühungen in allen Ehren ...

Anscheinend traut mir hier keiner was zu ... oder niemand macht sich die Mühe die Datei anzuschauen, die ich hochgeladen habe ... man sollte es nicht glauben, aber das 'Doppelte ausfiltern' ist schon in der Datei !!!

Und diese ... weiß gerade nicht wie ich es nennen soll ... fällt mir nicht zum ersten Mal von Seiten der Moderatoren auf.
Wenn ich richtig informiert bin, ist ein Moderator erst mal jemand, der darauf achtet, dass alles in den richtigen Bahnen läuft.
Aus anderen Foren bin ich es gewohnt, dass ein Moderator, der auf eine Nachfrage zu einer hochgeladenen Datei antwortet, aus dem Code der Datei zitiert und den TO nicht mit eigenem Code, der noch dazu nur wenig Bezug zur Dateilösung hat, noch weiter verwirrt.


In meiner Datei tut das nämlich die Function FillBox ... und zwar sehr viel eleganter ... nur mal so nebenbei.
Code:
Function FillBox(Bereich As Variant, _
                 Optional Spalte As Long = 1, _
                 Optional alle As Boolean = True) As Variant
Dim objDic As Object
Dim i As Long
Dim arr As Variant

Set objDic = CreateObject("Scripting.Dictionary")
arr = Bereich

If alle Then objDic.Add "alle", 0
If LBound(arr) = 0 Then Spalte = Spalte - 1

For i = LBound(arr) To UBound(arr, 1)
   If Not objDic.Exists(arr(i, Spalte)) Then
       objDic.Add arr(i, Spalte), 0
   End If
Next i

FillBox = objDic.keys

Set objDic = Nothing
End Function

Sagt es mir doch einfach, wenn meine Dateien, niemanden interessieren, dann kann ich sie auch löschen ... kein Problem. Ich kann auch zukünftig darauf verzichten, Dateilösungen hochzuladen, muss man mir einfach nur sagen, wenn es nicht gewünscht ist.

Und NEIN ... ich bin auch nicht auf Krawall gebürstet ... ist nur eine ganz normale Beschwerde.
Hi Sabina,

Also, ich habe nicht behauptet dass in Deinem Code was fehlt. Der TE hat auch nicht geschrieben, dass was nicht funktioniert sonder konkret nach einer Funktionalität gefragt, sodass man annehmen konnte, dass er auch doppelte Einträge gesehen hat.

Ich glaube nicht, dass Deine Dateien keinen interessieren. Ich lade nur ungern Dateien hoch und runter... und versuche, mit dem TE Lösungen Step by step zu entwickeln. Da ist es nicht verwunderlich wenn der Ansatz am Anfang nicht 100% passt, aber es ist doch schön wenn man merkt, dass ein TE mitmacht und man zusammen was zustande bringt. Ob da ein Array, ein Dictionary, eine Collection oder ein Listfill-Objekt für eindeutige Daten eleganter ist sei mal dahingestellt.
So, mehr will ich nicht dazu schreiben, sonst füllen wir den Thread mit reichlich oT...