Twitter iPhone pliant OnePlus 11 PS5 Disney+ Orange Livebox Windows 11

Lien hypertexte et cellule active

3 réponses
Avatar
vincent.topsent
Bonjour =E0 toutes et =E0 tous,

J'ai un classeur A contenant des liens hypertexte menant vers un autre
classeur B. je cherche =E0 faire en sorte que le lien hypertexte me
m=E8ne bien l=E0 o=F9 je le d=E9sire sur le classeur B mais qu'en plus, la
cellule de destination du lien hypertexte se trouve bien en "haut =E0
gauche" =E0 l'affichage.

Premier probl=E8me r=E9solu : celui de la position de la cellule active
sur la feuille appell=E9e (merci Robert Garcia et Frederic Sigonneau).
Avec cette proc=E9dure, la cellule active se place TOUJOURS en "haut =E0
gauche" :

Private Sub Workbook_SheetSelectionChange _
(ByVal Sh As Object, ByVal Target As Range)
If Sh.Name =3D "r=E9cap produit" Then
Exit Sub
Else: Application.Goto Target, True
End If
End Sub

MAIS :
comment faire un sorte que cette proc=E9dure ne marche QUE lorsque le
lien hypertexte est activ=E9. Si je veux faire des manipulations sur mon
classeur B, je ne veux pas que d=E8sque je clique sur une cellule
celle-ci se mette "en haut =E0 gauche".

Merci d'avance
Cordialement,

3 réponses

Avatar
Lolote
Salut Vincent,

Cette macro te permet de mettre en haut et a gauche la cellule appelée via
un lien hypertexte

Private Sub Worksheet_FollowHyperlink(ByVal Target As Hyperlink)
ActiveWindow.ScrollRow = ActiveCell.Row ' En haut
ActiveWindow.ScrollColumn = ActiveCell.Column ' A gauche
End Sub

Cela te convient il ????

@+ Lolote

a écrit dans le message de news:

Bonjour à toutes et à tous,

J'ai un classeur A contenant des liens hypertexte menant vers un autre
classeur B. je cherche à faire en sorte que le lien hypertexte me
mène bien là où je le désire sur le classeur B mais qu'en plus, la
cellule de destination du lien hypertexte se trouve bien en "haut à
gauche" à l'affichage.

Premier problème résolu : celui de la position de la cellule active
sur la feuille appellée (merci Robert Garcia et Frederic Sigonneau).
Avec cette procédure, la cellule active se place TOUJOURS en "haut à
gauche" :

Private Sub Workbook_SheetSelectionChange _
(ByVal Sh As Object, ByVal Target As Range)
If Sh.Name = "récap produit" Then
Exit Sub
Else: Application.Goto Target, True
End If
End Sub

MAIS :
comment faire un sorte que cette procédure ne marche QUE lorsque le
lien hypertexte est activé. Si je veux faire des manipulations sur mon
classeur B, je ne veux pas que dèsque je clique sur une cellule
celle-ci se mette "en haut à gauche".

Merci d'avance
Cordialement,
Avatar
Daniel
Bonsoir.
Remplace ta procédure par celle-ci :
Private Sub Workbook_Activate()
Application.Goto ActiveCell, True
End Sub
Cordialement.
Daniel
a écrit dans le message de news:

Bonjour à toutes et à tous,

J'ai un classeur A contenant des liens hypertexte menant vers un autre
classeur B. je cherche à faire en sorte que le lien hypertexte me
mène bien là où je le désire sur le classeur B mais qu'en plus, la
cellule de destination du lien hypertexte se trouve bien en "haut à
gauche" à l'affichage.

Premier problème résolu : celui de la position de la cellule active
sur la feuille appellée (merci Robert Garcia et Frederic Sigonneau).
Avec cette procédure, la cellule active se place TOUJOURS en "haut à
gauche" :

Private Sub Workbook_SheetSelectionChange _
(ByVal Sh As Object, ByVal Target As Range)
If Sh.Name = "récap produit" Then
Exit Sub
Else: Application.Goto Target, True
End If
End Sub

MAIS :
comment faire un sorte que cette procédure ne marche QUE lorsque le
lien hypertexte est activé. Si je veux faire des manipulations sur mon
classeur B, je ne veux pas que dèsque je clique sur une cellule
celle-ci se mette "en haut à gauche".

Merci d'avance
Cordialement,
Avatar
vincent.topsent
Merci pour votre aide à tous les deux. Pour une raison que j'ignore ta
procédure, Lolote, ne marche pas sur mon classeur.
Par contre j'ai trouvé ça:

Private Sub Workbook_SheetSelectionChange(ByVal Sh As Object, ByVal
Target As Range)
If Sh.Name = "récap produit" Then
Exit Sub
Else
If Target.Column = 1 Then
Application.Goto Target.Offset(0, 1), True
End If
End If
End Sub

je fais pointer mon lien vers la colonne A que je masque par la suites.
Du coup, l'utilisateur ne peux aller où il veut sur la feuille sans
que Application.goto le fasse ch... et le tour est joué.

Merci encore pour votre réactivité et votre gentillesse. A charge de
revanche (si c'est dans mes cordes !).




Salut Vincent,

Cette macro te permet de mettre en haut et a gauche la cellule appelée via
un lien hypertexte

Private Sub Worksheet_FollowHyperlink(ByVal Target As Hyperlink)
ActiveWindow.ScrollRow = ActiveCell.Row ' En haut
ActiveWindow.ScrollColumn = ActiveCell.Column ' A gauche
End Sub

Cela te convient il ????

@+ Lolote

a écrit dans le message de news:

Bonjour à toutes et à tous,

J'ai un classeur A contenant des liens hypertexte menant vers un autre
classeur B. je cherche à faire en sorte que le lien hypertexte me
mène bien là où je le désire sur le classeur B mais qu'en plus, la
cellule de destination du lien hypertexte se trouve bien en "haut à
gauche" à l'affichage.

Premier problème résolu : celui de la position de la cellule active
sur la feuille appellée (merci Robert Garcia et Frederic Sigonneau).
Avec cette procédure, la cellule active se place TOUJOURS en "haut à
gauche" :

Private Sub Workbook_SheetSelectionChange _
(ByVal Sh As Object, ByVal Target As Range)
If Sh.Name = "récap produit" Then
Exit Sub
Else: Application.Goto Target, True
End If
End Sub

MAIS :
comment faire un sorte que cette procédure ne marche QUE lorsque le
lien hypertexte est activé. Si je veux faire des manipulations sur mon
classeur B, je ne veux pas que dèsque je clique sur une cellule
celle-ci se mette "en haut à gauche".

Merci d'avance
Cordialement,