Se si desidera ripristinare l’immagine dello schermo per l’utente dopo che una macro ha modificato la visualizzazione della finestra, a volte è possibile attivare semplicemente la cella che era la cella attiva all’avvio della macro. Questo non sempre ha successo.

Il seguente codice di esempio ripristinerà la posizione della finestra proprio come era quando la macro è stata avviata:

Dim aRow As Long, aColumn As Integer, aRange As String ' global variables

Sub RememberWindowPosition() ' run this before making changes

With ActiveWindow

aRow = .ScrollRow

aColumn = .ScrollColumn

End With

aRange = Selection.Address

End Sub

Sub RestoreWindowPosition() ' run this to restore position in the window

Range(aRange).Select

With ActiveWindow

.ScrollRow = aRow

.ScrollColumn = aColumn

End With

End Sub