Clever-Excel-Forum

Normale Version: Unterschiedliche Farben zählen
Du siehst gerade eine vereinfachte Darstellung unserer Inhalte. Normale Ansicht mit richtiger Formatierung.
Seiten: 1 2 3
Hallo liebe Leute,

wollte eigentlich was anderes posten, aber da mein "neues kleines" Projekt nicht (ausreichend) funktioniert, möchte ich hier eine kleine Warnung
aussprechen. Ich wollte in einem Range - Bereich unter Verwendung von Collection alle verschiedenen Wörter zählen (s. Code unten). Dabei mußte ich feststellen, dass die Anzahl der Items auf 256 begrenzt ist. Der Code unten ist also für größeren Datenmengen ungeeignet. Genau das Gleiche gilt dann aber auch bei  einer zu großen Anzahl von Farben. Spreche auch gerade dich an "Crazy Tom", da du  ja die Collection - Eigenschaft so  gelobt hast. Sollte ich mich irren, postet mir das bitte hier. Würde gerne mit Collection weiterarbeiten, scheint mir aber nicht möglich.

Code:
Sub Zähle_die_verschiedene_Wörter_im_Range_Bereich()
On Error Resume Next
Dim i As Long, colAnzahl As New Collection
Dim MyArray As Variant
MyArray = Split(Join(Application.Transpose(Range("A1:A" & Cells(Rows.Count, 1).End(xlUp).Row))))
For i = 0 To UBound(MyArray)
colAnzahl.Add MyArray(i), MyArray(i)
colAnzahl.Add i, i
Next
Debug.Print "Anzahl & " & colAnzahl.Count
End Sub
Hallöchen,

256? das kann ich leider nicht bestätigen Sad Auch bei 3 Millionen ist noch nicht Schluss ...
[attachment=6279]

Hinweis: Die Überwachung zeigt ein paar weniger an :s
Hallo Andre,
danke für Deine Antwort, dann muss ich irgendwo einen Fehler gemacht haben. Ist ja eigentlich auch logisch, warum Schluss bei 256 bei einer Collection?!
Werde mir das Ganze nochmal anschauen.
Hallöchen,

schaue es Dir bei mehr als 256 aber nicht in der Überwachung an - gib die Daten - zumindest ab 257 - zum Test z.B. auf einem Blatt aus Smile
Hallo Andre,


du hast den Nagel auf den Kopf getroffen. Genau das hatte ich falsch gemacht. Aufgrund deiner Hilfe bin ich dann das Ganze nochmal durchgegangen
und habe  am Ende einfach ein sonst nicht vorkommendes Fantasiewort in die letzte Zelle eingetragen. Und siehe da, mit
dem Befehl debug.print colAnzahl.Item(i) , kam (bei i = 8536 )  genau dieses Wörtchen wieder zum Vorschein.
Seiten: 1 2 3