Si vous souhaitez restaurer l’image de l’écran pour l’utilisateur après qu’une macro a changé la vue de la fenêtre, vous pouvez parfois simplement activer la cellule qui était la cellule active lorsque la macro a démarré. Cela ne réussit pas toujours.

L’exemple de code suivant restaurera la position de la fenêtre comme elle l’était au démarrage de la macro:

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