ich habe mir eine Abfrage geschrieben mit der ich eine Tabelle durchlaufe und übereinstimmende Werte zählen möchte.
Ich kann die Daten leider nicht hochladen, hier ein Auszug:
Zeilen:
F = Laufende Bauteilnummer
D = Anlagenname
C= Bauteilentscheid
Ein Auszug:
Dim LastRow As Integer
Dim Zle As Integer
Dim Count_OK As Integer
Count_OK = 0
LastRow = Range("F65536").End(xlUp).Row
For Zle = 1 To LastRow
If Range("D" & Zle).Value Like "Bohrmaschine" And Range("C" & Zle).Value = "OK" Then
Count_OK = Count_OK+ 1
End If
Next
Das funktioniert soweit und ich bekomme alle Meldungen die an der Bohrmaschine OK waren als Zahlenwert. Allerdings kann es sein, dass ein Bauteil auch z.B. zweimal an der Bohrmaschine war, beides mit einer OK Meldung. (In meiner Datenquelle sehe ich dann die laufende Bauteilnummer zweimal. ) Ich möchte aber das es nur einmal gezählt wird, wie bekommt man sowas hin? Sowas wie distinct bei sql? Ich hoffe ihr versteht mein anliegen.
Wie habe ich es sonst gemacht:
Ich habe eine PIVOT über die Datentabelle gelegt und mit Pivotdatenzuordnung gearbeitet. Dann gab es die Bauteilnummer zwei mal und ich habe mit ISTZAHL gearbeitet. Bei der Vielzahl an Daten ist es allerdings irgendwann recht langsam geworden und ich hoffe das VBA mir da eine schlankere Lösung (auch von den Anzahl der Hilfstabellen) hilft.
Vielen Dank, für Fragen bin ich allzeit bereit