Lien hypertexte vers onglet non visible - Suite post avec ISABELLE
7 réponses
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.
Cette action est irreversible, confirmez la suppression du commentaire ?
Signaler le commentaire
Veuillez sélectionner un problème
Nudité
Violence
Harcèlement
Fraude
Vente illégale
Discours haineux
Terrorisme
Autre
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
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.
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
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 > >
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
>
>
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 > >
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
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 ?
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
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
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 ?
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
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 -----
ç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
-----
ç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 -----
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 -----
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
-----
ç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 -----
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 >----- > >
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
>-----
>
>
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 >----- > >