Mi herramienta Excel realiza una tarea larga, y trato de ser amable con el usuario al proporcionar un informe de progreso en la barra de estado, o en alguna celda de la hoja, como se muestra a continuación . Pero la pantalla no se actualiza o deja de refrescarse en algún momento (por ejemplo, 33%). La tarea finalmente se completa, pero la barra de progreso es inútil.Forzar una actualización de pantalla en Excel VBA
¿Qué puedo hacer para forzar una actualización de pantalla?
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
estoy usando Excel 2003.
eso es un montón de 'doevents' si lo haces en cada ciclo, en cambio hazlo cada 10 aproximadamente:' si mod 10 = 0 entonces Doevents' –