14.10.2019, 15:04
Hallo liebes Forum,
mir ist heute etwas aufgefallen und ich wollte wissen, ob das Problem jemand kennt.
Ich bin von Excel 2010 zu Excel 2016 gewechselt und einige Makros laufen jetzt sehr viel langsamer als vorher. Als Grund konnte ich die Funktion Application.StatusBar ausfindig machen, mit der ich mir immer anzeigen lasse, wie weit das Makro gerade ist.
Für das folgende simple Makro zum Beispiel braucht Excel 2016 hier 12 Sekunden, während Excel 2010 nur 2 Sekunden benötigt.
Sub test()
t = Now
For i = 1 To 5000
Application.StatusBar = i
l = i
Next i
Cells(1, 1) = Format(Now - t, "hh:mm:ss:ms")
End Sub
Wie kann das sein? Mir ist schon aufgefallen, dass die Reaktionen von Excel 2016 irgendwie "smooth" geworden sind, zum Beispiel wenn man einen Zellenbereich markiert. Kann das daran liegen? Und kann man das irgendwie ausstellen?
Ich möchte nicht unbedingt auf Application.StatusBar verzichten, auch wenn ich weiß, dass es noch andere Möglichkeiten gibt, um den Fortschritt des Makros anzuzeigen.
Vielen Dank für Eure Antwort.
Kieks
mir ist heute etwas aufgefallen und ich wollte wissen, ob das Problem jemand kennt.
Ich bin von Excel 2010 zu Excel 2016 gewechselt und einige Makros laufen jetzt sehr viel langsamer als vorher. Als Grund konnte ich die Funktion Application.StatusBar ausfindig machen, mit der ich mir immer anzeigen lasse, wie weit das Makro gerade ist.
Für das folgende simple Makro zum Beispiel braucht Excel 2016 hier 12 Sekunden, während Excel 2010 nur 2 Sekunden benötigt.
Sub test()
t = Now
For i = 1 To 5000
Application.StatusBar = i
l = i
Next i
Cells(1, 1) = Format(Now - t, "hh:mm:ss:ms")
End Sub
Wie kann das sein? Mir ist schon aufgefallen, dass die Reaktionen von Excel 2016 irgendwie "smooth" geworden sind, zum Beispiel wenn man einen Zellenbereich markiert. Kann das daran liegen? Und kann man das irgendwie ausstellen?
Ich möchte nicht unbedingt auf Application.StatusBar verzichten, auch wenn ich weiß, dass es noch andere Möglichkeiten gibt, um den Fortschritt des Makros anzuzeigen.
Vielen Dank für Eure Antwort.
Kieks