AW: Suche nach mehreren Kriterien mittels Datum
26.04.2018 13:31:09
Peter(silie)
Hallo,
hier ein wenig Code der zählt wie oft eine ID vorkommt.
Gibt die Ergebnisse im Direktfenster vom VBA Editor aus.
Option Explicit
Public Sub EvaluateSN()
Dim dict As Object
Dim data As Variant
Dim vItem As Variant
Dim tmp As Variant
Dim ws As Worksheet
Dim lr As Long
Set ws = ThisWorkbook.Sheets(1)
With ws
lr = .Cells(.Rows.Count, 1).End(xlUp).Row
data = .Range(.Cells(3, 1), .Cells(lr, 3)).Value
tmp = Split(Join(Application.Transpose( _
Application.Index(data, , 1)), ";"), ";")
Set dict = CreateObject("Scripting.Dictionary")
For Each vItem In tmp
dict(vItem) = 0
Next vItem
For Each vItem In data
vItem = CStr(vItem)
If dict.Exists(vItem) Then
dict(vItem) = dict(vItem) + 1
End If
Next vItem
For Each vItem In dict.keys
Debug.Print "ID: " & vItem & " kommt " & dict(vItem) & " in Spalte A vor"
Next vItem
End With
End Sub
Ergebnisse:
ID: 5493086 kommt 5 in Spalte A vor
ID: 5482807 kommt 4 in Spalte A vor
ID: 5292332 kommt 2 in Spalte A vor
ID: 5336352 kommt 3 in Spalte A vor
ID: 5240014 kommt 4 in Spalte A vor
ID: 5501492 kommt 4 in Spalte A vor
ID: 5219106 kommt 6 in Spalte A vor
ID: 3658924 kommt 2 in Spalte A vor
ID: 5308395 kommt 2 in Spalte A vor
ID: 3659392 kommt 2 in Spalte A vor
ID: 2870358 kommt 1 in Spalte A vor
ID: 2815105 kommt 3 in Spalte A vor
ID: 2498015 kommt 3 in Spalte A vor
ID: 2449882 kommt 3 in Spalte A vor
ID: 2592704 kommt 1 in Spalte A vor
ID: 2471399 kommt 3 in Spalte A vor
ID: 2449208 kommt 3 in Spalte A vor
ID: 3276253 kommt 3 in Spalte A vor
ID: 3183708 kommt 3 in Spalte A vor
ID: 3366837 kommt 3 in Spalte A vor
ID: 3153596 kommt 3 in Spalte A vor
ID: 3102857 kommt 3 in Spalte A vor
ID: 3664045 kommt 1 in Spalte A vor
ID: 3479321 kommt 2 in Spalte A vor
ID: 3825333 kommt 1 in Spalte A vor
ID: 3165390 kommt 2 in Spalte A vor
ID: 3181056 kommt 2 in Spalte A vor
ID: 3697006 kommt 1 in Spalte A vor
ID: 3815911 kommt 3 in Spalte A vor
ID: 3498940 kommt 2 in Spalte A vor
ID: 3184859 kommt 1 in Spalte A vor
ID: kommt in Spalte A vor