AW: gleiche Zelleninhalte zusammenfassen und für Combo
10.12.2014 11:03:55
Peter
Hallo Christian,
hier noch die Ausgabe der Namen in Spalte C ab Zeile 2
Option Explicit
' Ich habe bspw. 10 Zellen untereinander, die gefüllt sind mit Name1, Name2, Name3, Name1, _
Name4, Name2 etc.
' Ich möchte gern die gleichen Namen gruppieren, also in neuen Zellen eine Zusammenfassung _
der Namen haben.
' Diese Zellen sollen dann in einer ComboBox angesteuert werden, so dass man die Namen nicht _
doppelt in der ComboBox hat.
Public Sub Vereinzeln()
Dim lZeile As Long
Dim vTemp As Variant
Dim iTemp As Integer
Dim sTrennzeichen As String
Dim myDict As Object
Dim sName As String
Set myDict = CreateObject("Scripting.Dictionary")
sTrennzeichen = "," ' das Trennzeichen der Namen in den Zellen
With ThisWorkbook.Worksheets("Tabelle1") ' den Tabellenblattnamen ggf. anpassen!
For lZeile = 2 To .Cells(.Rows.Count, 1).End(xlUp).Row
If Trim$(.Range("A" & lZeile).Value) "" Then
vTemp = Split(.Range("A" & lZeile).Value, sTrennzeichen)
For iTemp = LBound(vTemp) To UBound(vTemp)
If Trim$(vTemp(iTemp)) "" Then sName = Trim$(vTemp(iTemp))
myDict(sName) = sName
Next iTemp
End If
Next lZeile
If myDict.Count > 0 Then
' die Unikate in der ComboBox ablegen
UserForm1.ComboBox1.List = myDict.keys
ThisWorkbook.Worksheets("Tabelle1").ComboBox1.List = myDict.keys
.Range("C2").Resize(myDict.Count) = Application.Transpose(myDict.keys)
End If
End With
End Sub
Gruß Peter