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

Col as New Collection

Col as New Collection
15.04.2008 15:29:21
Kay
Hallo, kleines Problem - vermutlich leicht zu beantworten...
ich habe auf der Suche nach einer Lösung folgenden Beitrag hier gefunden:
https://www.herber.de/forum/archiv/848to852/t850157.htm
Als ich diese Datei aufgemacht und das Makro startete, erhielt folgende Fehlermeldung:
"Fehler '457': Dieser Schlüssel ist bereits einem Element dieser Auflistung zugeordnet" ?!?
Und stehen bleibt die Prozedur in dieser Zeile:
col.Add Cells(iRow, 1).Value, Cells(iRow, 1).Value
Versteh ich nicht ?! Warum funktioniert es nicht bei mir - habe an der Datei nichts verändert ?!
Vielen Dank !
Gruß
KLE

8
Beiträge zum Forumthread
Beiträge zu diesem Forumthread

Betreff
Datum
Anwender
Anzeige
AW: Col as New Collection
15.04.2008 15:40:35
Renee
Hallo Kay,
überprüf mal ob im _initialize Event der UF, die On Error Resume Next Zeile auskommentiert ist.
GreetZ Renée

AW: Col as New Collection
15.04.2008 15:49:42
Kay
Hi René,
...danke schon mal für die schnelle Antwort.
Aber ich muss gestehen nicht genau zu wissen was Du meinst ?!
In der Userform steht halt der Klassiker: "On ERROR Resume Next"
Hier der Code aus der Datei:

Private Sub UserForm_Initialize()
Dim col As New Collection
Dim iRow As Integer
iRow = 1
On Error Resume Next
Do Until IsEmpty(Cells(iRow, 1))
col.Add Cells(iRow, 1).Value, Cells(iRow, 1).Value
iRow = iRow + 1
Loop
On Error GoTo 0
For iRow = 1 To col.Count
cboMarke.AddItem col(iRow)
Next iRow
cboMarke.ListIndex = 0
End Sub


Bitte hilf mir, falls ich da jetzt irgendwie völlig auf dem Holzweg bin. Habe mir meine Kenntnisse bisher immer nur angelesen und ausprobiert...nie wirklich "gelernt" ;o) ... und die Anweisung: col.Add ist mir nicht ganz geläufig im Detail...kannst Du mir sagen was sie genau tut und deren Dim-Zuweisung als "New Collection" genau Bedeutet ?! VIELEN DANK !
Gruß
Kay

Anzeige
AW: Col as New Collection
15.04.2008 16:01:22
Renee
Hi Kay,
Ein Collection ist ein Auflistungsobjekt in das mit der .Add Methode eindeutige Objekte addiert werden können. Wenn der On Error Resume Next Befehl fehlt, würde im Beispiel von Hans genau dein erwähnter Fehler auftauchen.
Hast du denn die Original-Datei laufen lassen (läuft problemlos bei mir) ? oder hast du nur etwas rauskopiert und selber was ausprobiert ?
GreetZ Renée

AW: Col as New Collection
15.04.2008 16:13:00
Kay
Hi,
Vielen Dank für die Erklärung - wieder was gelernt ;o) !!!
Nun, ich habe jetzt noch einmal alle offenen Dateien geschlossen und "nur" diese eine ORIGINAL-Datei gestartet und dann auf den Button "Dialog aufrufen" geklickt...und...noch immer erscheint der Fehlermeldung '457' ?!
Setze ich in der Col.Add - Anweistung den 2'ten Teil also mit dem Komma auf inaktiv ( ' -vorweg) und das gleiche anschließend in dem Programmcode in Zeile 13 (Prozedur cboMarke_Change())...dann läuft zwar die Userform, aber eben mit den Mehrfachnennungen in jeder Combobox...z.B. "VW" = 6x ...
Was kann es sein - dass es bei Dir läuft und bei mir nicht ... muss ich noch irgend ein Add-In zusätzlich installieren oder irgendein speziellen Verweis laden ?!
Gruß
Kay

Anzeige
AW: Col as New Collection
15.04.2008 16:25:48
Renee
Hi Kay,
Ich seh wirklich nicht, wo das Problem liegen könnte.
Die Originaldatei kommt mit den Verweisen:

Visual Basic For Applications
Microsoft Excel 9.0 Object Library
Microsoft Forms 2.0 Object Library


aus.
GreetZ Renée

AW: Col as New Collection
15.04.2008 23:26:50
Kay
Hallo Renée,
...komisch, habe es geprüft - diese Verweise sind bei mir auch aktiv...was ich nur Schade finde - ist, dass ich diesen Programmcode gern für ein Problem bei mir nutzen wollte.
Ich werde es morgen noch einmal auf einem anderen Rechner probieren, vielleicht liegt es ja an "meinem" Laptop ?!
Vielen dank erstmal für Deine Hilfe ... werde jetzt bestimmt öfter hier sein und mal sehen, vielleicht nicht nur fragen stellen - es gibt ja auch Dinge ich weiß ;o) (nach über 8 Jahre Excel und mehr als 10.000 erstellten Dateien ! im Vertriebscontrolling, bzw. Vertriebssteuerung)
Also, Ciao
Kay

Anzeige
AW: Col as New Collection
16.04.2008 09:38:03
Renee
Hi Kay,
Ich hab dir das Beispiel mal auf ein Scriptin.Dictionary (anstelle einer Collection) umgeschrieben.
Versuch mal ob das läuft: https://www.herber.de/bbs/user/51592.xls
GreetZ Renée

AW: Col as New Collection
16.04.2008 12:50:33
Kay
Hallo Renée,
vielen Dank, dass Du Dir echt soviel mühe machst...aber ich habe immer noch die Fehlermeldung (siehe Grafik). Es muss aber an meinem Excel/PC liegen - da die Datei auf einem anderen Rechner ohne Stress läuft ?!
Userbild
Werde jetzt mal ins eingemachte heut Abend gehen und alle ! Einstellungen der beiden Excel-Versionen checken...Punkt für Punkt - an irgendeiner Einstellung/Haken oder "kein" Haken muss es ja liegen ;o)
Vielen Dank schon mal so weit und ich melde mich wieder...
Gruß
Kay
Anzeige

Links zu Excel-Dialogen

Beliebteste Forumthreads (12 Monate)

Anzeige

Beliebteste Forumthreads (12 Monate)

Anzeige
Anzeige
Anzeige