Anzahl von Einträgen in einer Spalte ermitteln

In einer Spalte stehen unterschiedliche Werte, von denen einige doppelt aufgelistet werden. Man möchte aber die Anzahl der Einträge ermitteln, wobei die Doppelten nur als ein Eintrag gezählt werden sollen.

Excel VBA - Anzahl
Excel VBA – Anzahl

Option Explicit

Sub Anzahl()

Application.ScreenUpdating = False

'
' Ermittelt, wie viele unterschiedliche Einträge vorhanden sind
' Grundlage der Prüfung = Index
'
    Dim objDictionary As Object
    Dim Bereich As Variant
    Dim lngZaehler As Long
    Dim arrDaten As Variant

    Set objDictionary = CreateObject("Scripting.Dictionary")
    With Worksheets("Tabelle1")
    '
    ' Der Bereich wie dynamisch ermittelt.
    ' Dadurch wird sichergestellt, dass auch bei leeren Zellen der gesamte Bereich ausgewertet wird.
    '
        Bereich = .Range("A3", .Range("A3").End(xlDown))
        
    End With
    ' Schleife über alle Werte
    For lngZaehler = LBound(Bereich) To UBound(Bereich)
        ' Eintrag wird nur übernommen wenn er im DictionaryObject noch nicht enthalten ist
        objDictionary(Bereich(lngZaehler, 1)) = 0
    Next
    'MsgBox "Es sind " & objDictionary.Count & " unterschiedliche Einträge vorhanden." _
    '        , vbInformation, "Anzahl Index"
    
    Worksheets("Tabelle1").Range("C2").Value = "Anzahl"
    Worksheets("Tabelle1").Range("C3").Value = objDictionary.Count
    
End Sub

Eine Antwort auf „Anzahl von Einträgen in einer Spalte ermitteln“

Schreibe einen Kommentar

Deine E-Mail-Adresse wird nicht veröffentlicht. Erforderliche Felder sind mit * markiert