Laufzeitoptimierung
30.01.2019 15:38:47
Luisa
Ich habe in einem Projekt einen Codeschnipsel in ähnlicher Form mehrmals verwenden muss. Dieser hat allerdings eine relativ lange Laufzeit (1 Sekunde) , weshalb mein ganzes Programm ziemlich langsam ist.
Meine Frage: Hat jemand eine Idee, wie ich die Laufzeit verbessern kann?
Die Aufgabe von dem Part ist es, aus einer langen Liste (Tabelle 3: "Archiv") in der relativ viele Nummern ("Pläne") stehen, die mehrmals vorhanden sind, jeden einmal in eine andere Liste (Tabelle 2: "Otif") zu schreiben.
'Tabelle leeren
Tabelle2.Range("A2:EE1048576").ClearContents
letzteZeileArchiv = Tabelle3.Cells(1048576, 1).End(xlUp).Row
ersteFreieZeileOtif = 2
'Alle Planungsrunden auflisten
For i = 4 To letzteZeileArchiv
plan = Tabelle3.Cells(i, 1).Value
If Application.CountIf([A:A], plan) = 0 Then
Tabelle2.Cells(ersteFreieZeileOtif, 1).Value = plan
Tabelle2.Cells(ersteFreieZeileOtif, 2).Value = Tabelle3.Cells(i, 2).Value
Tabelle2.Cells(ersteFreieZeileOtif, 3).Value = Tabelle3.Cells(i, 3).Value
ersteFreieZeileOtif = ersteFreieZeileOtif + 1
End If
Next
Danke schon mal!Luisa