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

Inhalte aus Cobobox1 in Combobox2 filtern

Inhalte aus Cobobox1 in Combobox2 filtern
25.08.2006 10:18:28
Alwin
Hallo Spezialisten,
ich hab mal wieder ein kleines Problem:
Ich ziehe aus einer Tabelle die Daten hinter einer Zeile aus und befülle eine Cobobox (1).
Nun möchte ich in eine weitere Combobox (2) die mehrfachen Inhalte ausfiltern.
Ich habe schon in der Recherche gesucht, aber nur Lösungen gefunden, die direkt auf das Arbeitsblatt gehen. Das möchte ich aufgrund der Laufzeit nicht.
Kann mir jemand eine "Steilvorlage" geben?
Zum besseren Verständnis habe ich eine Datei hochgeladen.
https://www.herber.de/bbs/user/36129.xls
Danke im Voraus für die Unterstützung!
Gruß Alwin

3
Beiträge zum Forumthread
Beiträge zu diesem Forumthread

Betreff
Datum
Anwender
Anzeige
AW: Inhalte aus Cobobox1 in Combobox2 filtern
25.08.2006 11:54:05
ChrisL
Hallo Alwin
Supi dupi Makro für Dich:
Option Explicit
Option Base 0
Sub CBfüllen()
Dim rng As Range
Dim i As Long
Dim blDoppel As Boolean
ReDim arr(0) As Variant
With Worksheets("Tabelle1")
.ComboBox1.Clear
For Each rng In .Range("B3:I10")
If rng "" Then
If IsEmpty(arr(0)) Then
arr(0) = rng
Else
blDoppel = False
For i = 0 To UBound(arr)
If rng = arr(i) Then
blDoppel = True
Exit For
End If
Next i
If blDoppel = False Then
ReDim Preserve arr(UBound(arr) + 1)
arr(UBound(arr)) = rng
End If
End If
End If
Next rng
Call BubbleSortNumeric(arr)
.ComboBox1.List = arr()
End With
End Sub

Private Sub BubbleSortNumeric(List())
' Quelle: <a href="https://www.herber.de/forum/archiv/12to16/t15495.htm">https://www.herber.de/forum/archiv/12to16/t15495.htm</a>
Rem Sortiert das uebergebene Array numerisch.
' Fuer kleinere Datenmengen (wie Eintraege in einer Listbox) durchaus brauchbar.
Dim intFirst As Integer, intLast As Integer
Dim intI As Integer, intJ As Integer, intK As Integer
Dim varTemp As Variant
intFirst = LBound(List)
intLast = UBound(List)
For intI = intFirst To intLast - 1
If Not IsEmpty(List(intI)) Then
For intJ = intI + 1 To intLast
If Not IsNumeric(List(intI)) And Not IsNumeric(List(intJ)) Then
Exit Sub
Else
If Not IsEmpty(List(intJ)) Then
If CDbl(List(intI)) > CDbl(List(intJ)) Then
varTemp = List(intJ)
List(intJ) = List(intI)
List(intI) = varTemp
End If
End If
End If
Next intJ
End If
Next intI
End Sub

Gruss
Chris
Anzeige
AW: Inhalte aus Cobobox1 in Combobox2 filtern
25.08.2006 12:55:53
Alwin
Hallo Chris,
die Lösung funktioniert. Leider wird nun genau das gemacht, was ich eigentlich nicht wollte: Die Daten werden aus dem Tabellenblatt ausgelesen.
Ich wollte aber eigentlich die Inhalte der Combobox1 Ausfiltern.
Aber als Notlösung werde ich das mal einbauen.
Vielleicht meldet sich ja noch jemand...
Danke für Deine Unterstützung!!!
Gruß
Alwin
AW: Inhalte aus Cobobox1 in Combobox2 filtern
25.08.2006 13:15:55
ChrisL
Hallo
Da brauchst du einfach die Schleife zu ersetzen...
For Each rng In .Range("B3:I10")
...
Next rng
neu:
For ii = 0 To .ComboBox1.ListCount - 1
Debug.Print .ComboBox1.List(ii)
Next ii
Gruss
Chris
Anzeige

Links zu Excel-Dialogen

Beliebteste Forumthreads (12 Monate)

Anzeige

Beliebteste Forumthreads (12 Monate)

Anzeige
Anzeige
Anzeige