OVH Cloud OVH Cloud

VBA. Positionner la sélection dans l'écran.

4 réponses
Avatar
Positionneur
Bonjour =E0 la communit=E9.
Une macro devrait positionner le d=E9but de la s=E9lection =E0=20
mi-hauteur de l'=E9cran. J'ai regard=E9 les m=E9thodes de=20
l'objet Selection, mais il me semble que rien ne convient.=20
Quelqu'un pourrait-il me d=E9panner ? Merci d'avance.
Positionneur.

4 réponses

Avatar
Anacoluthe
Bonjour !

'Positionneur' nous a écrit ...
Une macro devrait positionner le début de la sélection à
mi-hauteur de l'écran. J'ai regardé les méthodes de
l'objet Selection, mais il me semble que rien ne convient.
Quelqu'un pourrait-il me dépanner ? Merci d'avance.


Milieu de l'écran, milieu de la fenêtre active, milieu
de la page affichée selon le mode d'affichage : vous
comprendrez que votre milieu manque de précision ...
Sans compter qu'on aime bien ici comprendre
le but des questions :-)

Anacoluthe
« Sur les bords au milieu c'est vrai qu' je crains un peu »
- RENAUD

Avatar
Positionneur
Bonjour.
'Anacoluthe' m'a répondu :
Milieu de l'écran, milieu de la fenêtre active, milieu
de la page affichée selon le mode d'affichage : vous
comprendrez que votre milieu manque de précision ...
Sans compter qu'on aime bien ici comprendre
le but des questions :-)


But de ma question : la macro recherche (par
Selection.Find) les occurrences d'une balise dans un
document et à chaque occurrence, l'utilisateur doit
vérifier quelques lignes qui précèdent cette occurrence et
quelques lignes qui la suivent. Si on était sûr que
Selection.Find met toujours la sélection par exemple au
sommet de la fenêtre active, on pourrait faire défiler le
document du nombre de lignes voulu, mais je me souviens
que des essais dans ce sens (à l'époque du Word 1997, je
crois) n'avaient pas eu l'effet escompté, parce que
Selection.Find positionnait la sélection à des endroits
imprévisibles. Tel est le motif pour lequel je trouverais
utile de pouvoir prescrire la position de la sélection,
disons dans la fenêtre active.
Avec mes remerciements en cas de complément de réponse,
Positionneur

Avatar
Anacoluthe
Bonjour !

'Positionneur' nous a écrit ...
But de ma question : la macro recherche (par
Selection.Find) les occurrences d'une balise dans un
document et à chaque occurrence, l'utilisateur doit
vérifier quelques lignes qui précèdent cette occurrence et
quelques lignes qui la suivent.


C'est plus clair ! Mais il me semble que vous aviez pris
le problème à l'envers : il ne s'agit pas du tout de
sélectionner le milieu de la fenêtre, mais d'ajuster le
défilement de la fenêtre avec ActiveWindow.ScrollIntoView
à une sélection élargie. Suffit de définir temporairement
un range de qq lignes au dessus et au dessous puis
d'ajuster l'affichage, non ?
Comme quoi , c'est mieux quand on comprend pourquoi...

Anacoluthe
« Sur les bords au milieu c'est vrai qu' je crains un peu »
- RENAUD

Avatar
Positionneur
Bonjour

'Anacoluthe' nous a écrit ...

C'est plus clair ! Mais il me semble que vous aviez pris
le problème à l'envers : il ne s'agit pas du tout de
sélectionner le milieu de la fenêtre, mais d'ajuster le
défilement de la fenêtre avec ActiveWindow.ScrollIntoView
à une sélection élargie. Suffit de définir temporairement
un range de qq lignes au dessus et au dessous puis
d'ajuster l'affichage, non ?


OK Anacoluthe. Dans mon esprit, il s'agissait d'agir sur
la sélection, d'où ma recherche dans les méthodes de
l'objet Selection, mais c'est en effet plutôt une question
de défilement. Merci.
(Positionneur ? Ou Défileur ?)