Beschleunigung eines Makro
23.01.2008 08:20:40
Jörg
bräuchte eure Hilfe.
Folgendes Makro durchläuft ~ 12000 Zeilen für 2 * 256 Spalten
Wie kann ich das Makro beschleunigen (außer mit Application.ScreenUpdating)?
Sub Tabelle1()
Application.Calculation = xlCalculationManual
Application.EnableEvents = False
Sheets("Tabelle1").Select
Cells(1, 1).Select
Dim i As Integer
i = 5
j = 4
Do
If (Selection Selection.Offset(0, i) Or Selection.Offset(0, 1) Selection.Offset(0, j)) Then
Selection.Offset(0, i - 2).Insert Shift:=xlDown
Selection.Offset(0, i - 1).Insert Shift:=xlDown
Selection.Offset(0, i).Insert Shift:=xlDown
Selection.Offset(0, i + 1).Insert Shift:=xlDown
Selection.Offset(0, i + 2).Insert Shift:=xlDown
End If
Selection.Offset(1, 0).Select
Loop Until Selection = "" Or Selection.Offset(0, i) = ""
i = i + 6
j = j + 6
Cells(1, 1).Select
An dieser Stelle folgt dieselbe Anweisung ab Do erneut. Dieser Schritt wiederholt sich 84 mal.
Wie könnte ich den Ablauf beschleunigen?
Ziel ist ja, dass Excel mir zu einem Wertepaar in Spalte A/B die sortierten Werte aus Spalte F/E auf der jeweiligen Zeilenhöhe einfügt.
Bin hier echt am verzweifeln, da das verschieben um ca 1.000 Zeilen aus dem ersten der 84 Blöcke schon 5 min dauert.
Bitte um ne möglichst schnelle Antwort.
Gruß