Mein Excel-Tool führt eine lange Aufgabe aus, und ich bemühe mich, dem Benutzer gegenüber freundlich zu sein, indem ich einen Fortschrittsbericht in der Statusleiste oder in einer Zelle des Blattes zur Verfügung stelle . Aber der Bildschirm wird nicht aktualisiert oder stoppt die Aktualisierung an einem bestimmten Punkt (z. B. 33%). Die Aufgabe wird schließlich abgeschlossen, aber der Fortschrittsbalken ist nutzlos.Erzwingen einer Bildschirmaktualisierung in Excel VBA
Was kann ich tun, um eine Bildschirmaktualisierung zu erzwingen?
For i=1 to imax ' imax is usually 30 or so
fractionDone=cdbl(i)/cdbl(imax)
Application.StatusBar = Format(fractionDone, "0%") & "done..."
' or, alternatively:
' statusRange.value = Format(fractionDone, "0%") & "done..."
' Some code.......
Next i
Ich verwende Excel 2003
das ist eine Menge 'doevents', wenn Sie es auf jeder Schleife tun, stattdessen tun es jede 10 oder so:' wenn ich mod 10 = 0 dann Doevents' –