Collection mit Function füllen
26.03.2009 08:58:13
Specke
ich prüfe mit folgendem Code, ob ein Wert bereits in einer Collection ist, um Duplikate zu verhindern.
Sub test()
For k = 1 To colWerte(Btn_Nr).Count
If colWerte(Btn_Nr).Item(k) = strAuswahl Then
bolGefunden = True
Exit For
End If
Next k
If bolGefunden = False Then
colWerte(Btn_Nr).Add strAuswahl
End If
End Sub
Da ich diesen Codeschnipsel sehr häufig in meinem Programm brauche, wollte ich eine Funktion daraus machen.
Function DuplikateFiltern(Wert As String) As String
Dim k As Integer
Dim bolGefunden As Boolean
bolGefunden = False
For k = 1 To colWerte(Btn_Nr).Count
If colWerte(Btn_Nr).Item(k) = Wert Then
bolGefunden = True
Exit For
End If
Next k
If bolGefunden = False Then
strAuswahl = Wert
Else
strAuswahl = ""
End If
End Function
und mit
colWerte(Btn_Nr).Add DuplikateFiltern(strAuswahl)
die Collection füllen. Leider werden keine Werte in die Collection übergeben. Die Collection hat die richtige Anzahl Items, diese sind aber leer.
Wie muss ich den Wert aus der Funktion richtig übergeben (strAuswahl ist Public)?
Danke und Gruß
Specke