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

Lien hypertexte vers onglet non visible - Suite post avec ISABELLE

7 réponses
Avatar
Sunburn
Bonjour,
suite du post du 06/11/08 et réponse pour isablle du 21/11/08.
voici mon fichier (en très simplifié) :
http://cjoint.com/?lBiQe7Tihy ou (je ne sais pas lequel donné)
http://cjoint.com/data/lBiQe7Tihy.htm
Explication :
Je voudrais que lorsque je clic sur mes liens hypertextes de ma page GA02,
cela me dirige vers la page voulue, tout en sachant qu'à la base, la page
désirée n'est pas visible.
le code donné par Isabelle est en macro dans le fichier joint.
précision : les cellules qui contiennent les liens hypertextes sont
normalement vérouillées et la protection est activée, sans mot de passe.

Merci de votre aide à tous
YANN

7 réponses

Avatar
isabelle
bonjour Yann,

c'était une question de ' autour du nom de feuille, voilà la correction :

Private Sub Worksheet_FollowHyperlink(ByVal Target As Hyperlink)
Dim h As Hyperlink
For Each h In Worksheets("GA02").Hyperlinks
If h.Range.Address = Target.Range.Address Then
x = Left(h.SubAddress, Application.Find("!", h.SubAddress) - 1)
y = Right(h.SubAddress, Len(h.SubAddress) - Application.Find("!",
h.SubAddress))
x = Application.Substitute(x, "'", "")
Sheets(x).Visible = True
Application.GoTo Sheets(x).Range(y)
Exit Sub
End If
Next
End Sub

isabelle

Sunburn a écrit :

Bonjour,
suite du post du 06/11/08 et réponse pour isablle du 21/11/08.
voici mon fichier (en très simplifié) :
http://cjoint.com/?lBiQe7Tihy ou (je ne sais pas lequel donné)
http://cjoint.com/data/lBiQe7Tihy.htm
Explication :
Je voudrais que lorsque je clic sur mes liens hypertextes de ma page GA02,
cela me dirige vers la page voulue, tout en sachant qu'à la base, la page
désirée n'est pas visible.
le code donné par Isabelle est en macro dans le fichier joint.
précision : les cellules qui contiennent les liens hypertextes sont
normalement vérouillées et la protection est activée, sans mot de passe.

Merci de votre aide à tous
YANN




Avatar
Sunburn
Oui, impecable isabelle
il plante cependant là :
---
Application.GoTo Sheets(x).Range(y)
---
donc j'ai mis un ' devant, et c'est bon, y'a juste qu'on y va pas
directement sur l'onglet voulu ?
ça peut etre du à quoi ???
comment rectifier ??
Merci.
YANN

"isabelle" a écrit :

bonjour Yann,

c'était une question de ' autour du nom de feuille, voilà la correction :

Private Sub Worksheet_FollowHyperlink(ByVal Target As Hyperlink)
Dim h As Hyperlink
For Each h In Worksheets("GA02").Hyperlinks
If h.Range.Address = Target.Range.Address Then
x = Left(h.SubAddress, Application.Find("!", h.SubAddress) - 1)
y = Right(h.SubAddress, Len(h.SubAddress) - Application.Find("!",
h.SubAddress))
x = Application.Substitute(x, "'", "")
Sheets(x).Visible = True
Application.GoTo Sheets(x).Range(y)
Exit Sub
End If
Next
End Sub

isabelle

Sunburn a écrit :

>Bonjour,
>suite du post du 06/11/08 et réponse pour isablle du 21/11/08.
>voici mon fichier (en très simplifié) :
>http://cjoint.com/?lBiQe7Tihy ou (je ne sais pas lequel donné)
>http://cjoint.com/data/lBiQe7Tihy.htm
>Explication :
>Je voudrais que lorsque je clic sur mes liens hypertextes de ma page GA02,
>cela me dirige vers la page voulue, tout en sachant qu'à la base, la page
>désirée n'est pas visible.
>le code donné par Isabelle est en macro dans le fichier joint.
>précision : les cellules qui contiennent les liens hypertextes sont
>normalement vérouillées et la protection est activée, sans mot de passe.
>
>Merci de votre aide à tous
>YANN
>
>



Avatar
isabelle
bonjour Yann,

Sunburn a écrit :

y'a juste qu'on y va pas directement sur l'onglet voulu ?





là c'est moi qui ne comprend pas, ou va t'il si ce n'est pas sur la
feuille voulu ?

isabelle
Avatar
Sunburn
ben, j'ai mis la dernière ligne avec un ' car sinon ça plante.
et il reste donc sur la feuille GA02.
je vais essayer un sheets(x).activate à la place , non ?

"isabelle" a écrit :

bonjour Yann,

Sunburn a écrit :

> y'a juste qu'on y va pas directement sur l'onglet voulu ?
>
>

là c'est moi qui ne comprend pas, ou va t'il si ce n'est pas sur la
feuille voulu ?

isabelle




Avatar
Sunburn
ça marche. Merci beaucoup Isabelle
voilà le code au final, si d'autres ont besoin :
-----
'pour faire marcher les liens hypertexte, même si l'onglet n'est pas visible
Private Sub Worksheet_FollowHyperlink(ByVal Target As Hyperlink)
Dim h As Hyperlink
For Each h In Worksheets("GA02").Hyperlinks
If h.Range.Address = Target.Range.Address Then
x = Left(h.SubAddress, Application.Find("!", h.SubAddress) - 1)
y = Right(h.SubAddress, Len(h.SubAddress) - Application.Find("!",
h.SubAddress))
x = Application.Substitute(x, "'", "")
Sheets(x).Visible = True
Sheets(x).Activate
Exit Sub
End If
Next
End Sub
-----
Avatar
isabelle
bonjour Yann,

pourquoi as tu remplacer la ligne :

Application.GoTo Sheets(x).Range(y)

par :

Sheets(x).Activate

isabelle

Sunburn a écrit :

ça marche. Merci beaucoup Isabelle
voilà le code au final, si d'autres ont besoin :
-----
'pour faire marcher les liens hypertexte, même si l'onglet n'est pas visible
Private Sub Worksheet_FollowHyperlink(ByVal Target As Hyperlink)
Dim h As Hyperlink
For Each h In Worksheets("GA02").Hyperlinks
If h.Range.Address = Target.Range.Address Then
x = Left(h.SubAddress, Application.Find("!", h.SubAddress) - 1)
y = Right(h.SubAddress, Len(h.SubAddress) - Application.Find("!",
h.SubAddress))
x = Application.Substitute(x, "'", "")
Sheets(x).Visible = True
Sheets(x).Activate
Exit Sub
End If
Next
End Sub
-----




Avatar
Sunburn
re isabelle,
ben en fait, il plantait sur application.goto, donc j'ai essayé
sheets(x).activate et ça fonctionne, il me positionne sur l'onglet du lien
hypertexte.
YANN

"isabelle" a écrit :

bonjour Yann,

pourquoi as tu remplacer la ligne :

Application.GoTo Sheets(x).Range(y)

par :

Sheets(x).Activate

isabelle

Sunburn a écrit :

>ça marche. Merci beaucoup Isabelle
>voilà le code au final, si d'autres ont besoin :
>-----
>'pour faire marcher les liens hypertexte, même si l'onglet n'est pas visible
>Private Sub Worksheet_FollowHyperlink(ByVal Target As Hyperlink)
>Dim h As Hyperlink
>For Each h In Worksheets("GA02").Hyperlinks
> If h.Range.Address = Target.Range.Address Then
> x = Left(h.SubAddress, Application.Find("!", h.SubAddress) - 1)
> y = Right(h.SubAddress, Len(h.SubAddress) - Application.Find("!",
>h.SubAddress))
> x = Application.Substitute(x, "'", "")
> Sheets(x).Visible = True
> Sheets(x).Activate
> Exit Sub
> End If
>Next
>End Sub
>-----
>
>