Hallo.
Ich habe 2160 Zeilen und 4096 Spalten (die 4096. Spalte ist die Spalte "FAN").
Nun möchte ich zählen wie viele unterschiedliche Werte sich in diesem Bereich befinden.
In jedem Feld steht ein Wert und die Werte gehen von 0 - 65355.
Gruß und vielen Dank im Voraus.
Danke erstmal,
leider hängt sich bei mir Excel dann auf wenn ich die 8,8 Millionen Werte miteinander vergleichen will :/
Gibt's noch irgend eine ressourcensparendere Methode?
Hallo,
Du durchsuchst immerhin 8,8 Mio. Zellen! Könntest Du vielleicht VBA verwenden? Wenn ja, mache es mal so.
Code:
Sub prcZahlenzaehlen()
Dim objDic As Object
Dim rngZelle As Range
Set objDic = CreateObject("Scripting.Dictionary")
For Each rngZelle In Range("A2:FAN2160")
objDic(rngZelle.Value) = 1
Next rngZelle
MsgBox objDic.Count
Set objDic = Nothing
End Sub
Hi,
oder so:
Code:
Sub UnikateErmitteln()
Dim objDic As Object
Dim zelle As Range
Set objDic = CreateObject("Scripting.Dictionary")
With ActiveSheet
For Each zelle In .Range("A2:FAN2160")
If Not objDic.Exists(zelle.Value) Then
If IsEmpty(zelle.Value) = False Then
objDic.Add zelle.Value, zelle.Value
End If
End If
Next zelle
MsgBox "Es befinden sich " & objDic.Count & " Unikate im Bereich."
End With
Set objDic = Nothing
End Sub
Gruß
Max
Bin ziemlicher Noob in VBA.
Steffl, du hast "End Sub" vergessen oder?
mit End Sub hats funktioniert, und es spuckt mir eine Zahl aus, danke!
Ahh mein Fehler, der Code ging ja noch weiter :P
Funktioniert beides, ich danke euch!
Hallo,
wobei ich bei den beiden VBA-Codes unterschiedliche Ergebnisse erhalte.
Bei diesem Tabellenaufbau
Arbeitsblatt mit dem Namen 'Tabelle1' |
| A | B |
1 | | |
2 | a | b |
3 | a | c |
4 | a | |
5 | b | |
6 | | |
Diese Tabelle wurde mit Tab2Html (v2.4.1) erstellt. ©Gerd alias Bamberg |
gibt der Code von Steffl das Ergebnis 4 aus und der Code von Max das Ergebnis 3, wobei ich bei beiden Codes den Bereich auf A2:B10 geändert habe.
Hallo Peter,
das liegt darn, dass der Code von Stefan auch Leerzellen berücksichtigt.
Auch wenn der TS schrieb, jede Zelle sei gefüllt, habe ich diese Prüfung
trotzdem noch mit eingebaut.
Da in Deinem Bereich auch Leerzellen enthalten sind, erhältst Du einen Treffer mehr.
Gruß
Max