VBA Rechenzeit fuer Matrixformel verkuerzen
28.09.2015 17:20:24
MarkusX
hat jemand eine Idee, wie ich fuer folgenden Code die Rechenzeit noch weiter optimieren koennte:
Sub ZeigeWerte()
' Matrixformel
Dim ur As Long ' ur = letzte Zeile der Spalte A
Dim record As Integer 'bis zu 1000 gefundene Zeilen des Kriteriums
ActiveSheet.Unprotect
Application.ScreenUpdating = False
Application.Calculation = xlCalculationManual
ur = Sheets("Tabelle_1").Range("A65536").End(xlUp).Row
Range("J7").FormulaR1C1 = "=COUNTIF('Tabelle_1'!R2C1:R" & ur & "C[-2],R4C10)"
record = Sheets("Scelta cliente").Range("J7").Value
For zeile = 1 To record
Range("A3").Offset(zeile, 0).FormulaArray = _
"=INDEX('Tabelle_1'!C[1],LARGE(IF('Dettagli record'!R2C1:R" & ur & "C1=R4C10,ROW(' _
Dettagli record'!R2:R" & ur & "))," & zeile & "))"
Next zeile
Application.Calculation = xlCalculationAutomatic
Application.ScreenUpdating = True
ActiveSheet.Protect DrawingObjects:=True, Contents:=True, Scenarios:=True
End Sub
Vorab vielen Dank fuer euer Interesse und eure Tips.Gruesse
Markus X