Hallo zusammen,
ich verwende über VBA die Zählenwenn-Funktion. Das funktioniert auch sehr gut und läuft sehr schnell.
Allerdings habe ich das Problem, dass ich im nachhinein nicht die Formel, sondern die den Wert in den entsprechenden Zellen benötige. Wenn ich nun über die Funktion .copy und .pastespecial paste:=xlpastevalues die Werte kopieren möchte, dauert das bei ca. 30.000 Zeilen sehr lange (ca. 20 Minuten).
Wenn ich direkt für alle 30.000 Zeilen die Werte mit Zählenwenn berechnen könnte anstatt die Formel einzutragen und später mit "nur Werte kopieren" zu kopieren, würde sich vermutlich die Laufzeit deutlich verringern. Habt ihr eine Idee wie das aussehen könnte? Hier der Code.
ActiveSheet.Range("B2").FormulaLocal = "=ZÄHLENWENN(A:A;A2)"
ActiveSheet.Range("B2").AutoFill Destination:=Range("B2:B" & GetLastRow(wksImport))
With Cells
.Copy
.PasteSpecial Paste:=xlPasteValues 'dieser Schritt dauert sehr lange!
End With
Application.CutCopyMode = False
|