Zielwertsuche mit VBA - dauert zu lange

Bild

Betrifft: Zielwertsuche mit VBA - dauert zu lange
von: Stata15
Geschrieben am: 20.07.2015 14:32:48

Hallo,
ich habe ein Problem bei der Arbeit mit Excel. Die Ausführung des Makros (VBA) dauert viel zu lange. Ich habe ein Sample von 670.000 Beobachtungen und für jede Beobachtung (1 Beobachtung = 1 Zeile) soll die Zielwertsuche durchgeführt werden.
Dafür habe ich mir von einem Freund einen Code in VBA erstellen lassen:

Public Function Zielwert()
Dim z As Integer
z = 2
For i = 1 To 500
Range("EY" & z).GoalSeek Goal:=Range("K" & z).Value, ChangingCell:=Range("EW" & z)
Range("EY" & z).GoalSeek Goal:=Range("K" & z).Value, ChangingCell:=Range("EW" & z)
z = z + 1
Next i
End Function

Kann man da am Makro noch was verändern, damit es schneller geht?
Ich habe das Makro mal für unterschiedliche Anzahlen an Beobachtungen laufen lassen. Bei 500 geht es noch recht fix. Bei 1000 dauert es aber nicht doppelt so lang, sondern viel viel länger. Das gleiche gilt für 10.000 Beobachtungen.
Kann mir da jemand weiterhelfen?
Viele Grüße!

Bild

Betrifft: AW: Zielwertsuche mit VBA - dauert zu lange
von: Werner
Geschrieben am: 20.07.2015 15:38:39
Hallo,
ich bin jetzt nicht der VBA Experte stelle mir bei deinem Code aber folgende Frage: Weshalb führst du die Zielwertsuche direkt nacheinander für exakt die gleichen Zellen durch, also doppelt?
Ansonsten kannst du ja mal versuchen am Anfang deines Codes die automatische Berechnung aus und am Ende des Codes wieder ein zu schalten.
Application.Calculation = xlCalculationManual
Application.Calculation = xlCalculationAutomatic
Gruß Werner

 Bild

Beiträge aus den Excel-Beispielen zum Thema "Zielwertsuche mit VBA - dauert zu lange"