gehe davon aus das es dafür doch keine Lösung gibt?
da ich auf die Problembeschreibung nichts weiteres gehört habe.
Gruß
Erich
Sub Fuellen_Lieferant()
Dim col As New Collection
Dim iRow As Long, ALetzte As Long
ALetzte = IIf(IsEmpty(Range("A65536")), Range("A65536").End(xlUp).Row, 65536)
'On Error Resume Next
cboLieferant.Clear
For iRow = 4 To ALetzte
If Not IsEmpty(Cells(iRow, 5)) Then
col.Add Cells(iRow, 5), Cells(iRow, 5) 'Laufzeitfehler '457' (diese Meldung erscheint, _
in diesem Schritt)
If Err = 0 Then 'Dieser Schlüssel ist bereits einem _
Element dieser Auflistung zugeordnet
cboLieferant.AddItem Cells(iRow, 5)
Else
Err.Clear
End If
End If
Next iRow
On Error GoTo 0
Call Sortieren1
'On Error Resume Next
cboLieferant.ListIndex = 0
End Sub
Wenn das vorkommen kann, dann musst du vor dem Zuweisen eines Wertes an die Collection eine Abfrage schalten, ob der entsprechende Wert nicht schon drin ist. Oder du benutz ein anderes Key-System. Z.B. die Objektadresse der Zelle im Stackframe.
Aber mal eine andere Frage, wozu wird diese Collection überhaupt benötigt?
Was ist eine Collection?
Habe das jetzt mal so probiert, hiermit komme ich aber nicht klar in der Tabelle gibt es doppelte Einträge das ist auch gewünscht, in der ComboBox nicht.
Was habe ich noch für möglichkeiten, bis zum Stop mit F8 wird ordentlich abgearbeitet.
Bspw. die Dateien auslesen aus dem Ordner kann man mit F8 sehen das hier die Schleife solange wiederholt wird bis alle Dateien gelesen wurden.
Gruß
Erich
Was ist eine Collection?
Das musst du doch wissen, denn in deinem Code sehe ich folgende Deklaration:
Dim col As New Collection
Und mit der Add-Methode fütterst du sie ja auch.
Gruß
Nepumuk
Die erweiterte Suchfunktion hilft dir, gezielt die besten Antworten zu finden
Suche nach den besten AntwortenEntdecke unsere meistgeklickten Beiträge in der Google Suche
Top 100 Threads jetzt ansehen