Beschleunigung meines Skripts
23.04.2015 14:27:28
henrik
ich habe ein VBA Skript, welches in die aktive Zelle eine Formel schreibt, die sich auf die Zelle links daneben bezieht. Es geht dann von der aktiven Zelle immer eine Zelle nach unten und wiederholt diesen Prozess. Das macht es solange, solange die linke Zelle gefüllt ist.
Sub TextformelEinfuegen()
Dim j As Double
ActiveCell.EntireColumn.Select
Selection.Insert Shift:=xlToRight, CopyOrigin:=xlFormatFromLeftOrAbove
ActiveCell.Select
Do While ActiveCell.Offset(0, -1).Value Empty
j = ActiveCell.Row
ActiveCell.FormulaLocal = "=Text(" & (Chr(ActiveCell.Offset(0, -1).Column + 64)) & j & ";""0"")" _
ActiveCell.Offset(1, 0).Select
Loop
ActiveCell.EntireColumn.Select
Selection.Copy
Selection.PasteSpecial Paste:=xlPasteValues, Operation:=xlNone, SkipBlanks _
:=False, Transpose:=False
End Sub
Das Skript funktioniert gut. Es wird jedoch wenn ich viele gefüllte Zeile langsam, da es Zeile für Zeile prüft ob die linke Zelle gefüllt ist und die Formel einfügt. Gibt es eine Möglichkeit das zu beschleunigen?
Danke und Gruß