Makro beschleunigen
09.12.2012 18:07:30
lutz
ich habe einen Code der mir bei der Abrechnung ein Bezahlt Text in meine Buchungstabelle schreibt.
Leider wird der Code immer langsamer und dauert mittlerweile bei 4000 Datensätzen über eine Minute.
Kann man den Code beschleunigen? Ich habe schon ein paar Sachen eingebaut es dauert aber immer noch recht lange...
Hier der Code:
Sub Bezahlt_markieren2()
Dim RechnungsFeld, Listenfeld As Object
Dim Awsheet As String
Awsheet = ActiveSheet.Name
Application.ScreenUpdating = False
Application.EnableEvents = False
Application.DisplayAlerts = False
Application.Calculation = xlManual
ActiveWorkbook.Sheets("Liste").Activate
For Each RechnungsFeld In Worksheets(Awsheet).Range("V10:V" & Worksheets(Awsheet).Cells. _
SpecialCells(xlCellTypeLastCell).Row)
For Each Listenfeld In ActiveSheet.Range("V2:V" & ActiveSheet.Cells.SpecialCells( _
xlCellTypeLastCell).Row)
If Listenfeld.Text = RechnungsFeld.Text Then
'If Listenfeld.Offset(0, 1) = RechnungsFeld.Offset(0, 1) Then
ActiveSheet.Range("AL" & Listenfeld.Row) = "bez"
ActiveSheet.Range("AM" & Listenfeld.Row) = Now
'End If
End If
Next Listenfeld
Next RechnungsFeld
Application.ScreenUpdating = True
Application.EnableEvents = True
Application.DisplayAlerts = True
Application.Calculation = xlAutomatic
ActiveWorkbook.Sheets(Awsheet).Activate
End Sub
Vielen Dank für Eure Hilfe und viele Grüße Lutz