ich weiß nicht wo ich nach dem Fehler suchen kann, wenn die Function.CountIf( ...) bei mehreren Durchläufen unterschiedliche Ergebnisse ausgibt.
Im Verlauf des MAcro werden in ein Array bei Übereinstimmung (Vergleich in Schleife) x oder xx in das letzte Feld eingetragen ar(z,6) = x
Dieses Array wird am Ende in die Tabelle Daten1 übertragen - gleiches Verfahren nur andere Anzahl der Übereinstimmung und somit x bzw xx in Daten2
Jetz möchte ich eine Zusammenfassung der x bzw xx erhalten mit ZahlenWenn /CountIf
Das Übertragen der beiden Array findet direkt vor den folgenden Zeilen statt.
Ich hoffte mit einer Pause oder Aktualisierung könnte das Problem gelöst werden.
Möglicherweise interessant
für Tabelle DAten1 werden korrekt 1 / 195 / 196 gefunden oder falsch 0 / 155 / 19
für Tabelle DAten2 werden korrekt 7 / 351 / 4509 gefunden oder falsch 1 / 195 / 196
hier der Code:
'Application.Wait (5000) 'x = Zeit in Millisekunden'
Application.Wait Now + TimeSerial(0, 0, 5) 'wartet 2 Sekunden 'Warten - mglw. ist tabelle noch nicht vollständig
Application.ThisWorkbook.RefreshAll
With tbl_Daten1
'Range("G1").Value = WorksheetFunction.CountIf(Range("G2:G" & lngZeile1Max), "xx")
x = WorksheetFunction.CountIf(Range("G2:G" & lngZeile1Max), "x")
xx = WorksheetFunction.CountIf(Range("G2:G" & lngZeile1Max), "xx")
ThisWorkbook.Worksheets("Daten1").Range("G1").Value = "'" & x & " / " & xx & " / " & (lngZeile1Max - 1) 'Ausgabe Anzahl: x / xx / Gesamt
End With
With tbl_Daten2
'Range("G1").Value = WorksheetFunction.CountIf(Range("G2:G" & lngZeile1Max), "xx")
x = WorksheetFunction.CountIf(Range("G2:G" & lngZeile2Max), "x")
xx = WorksheetFunction.CountIf(Range("G2:G" & lngZeile2Max), "xx")
ThisWorkbook.Worksheets("Daten2").Range("G1").Value = "'" & x & " / " & xx & " / " & (lngZeile2Max - 1)
End With
Habt Ihr eine Idee was ich falsch mache?
Danke, viele Grüße
MiSchi