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

Liste de validation et hyperliens

15 réponses
Avatar
J
Bonjour zatous
Dans un classeur, comment avec une simple liste de validation (dans une
cellule) qui pointe vers des cellules contenant des hyperliens aller à
la feuille vers laquelle pointe l'hyperlien.


Je sais (tout au moins en m'inspirant fortement des travaux des savants)
avec un combobox aller vers une des feuilles du classeur.
Mais je n'y arrive pas avec une simple liste déroulante dans une cellule.

Quelqu'un pourrait m'aider, siouplait
merci
@+
et bon week-end
J@@

5 réponses

1 2
Avatar
J
Bonjour Daniel
voici le lien Cjoint
http://cjoint.com/?mteNMZm7E5
En fait en sélectionant en A5 une donnée, on devrait être dirigé vers la
feuille ciblée par les hyperliens en D7:D9.
Ensuite mon intention est que cela fonctionne pour chaque cellule A:A
qui contiendra cette liste de validation (et cela seulement lorsqu'en
colonne C:C on a 1)
Merci pour ton attention
cordialement
J@@


Bonjour.
On gagnerait du temps si tu pouvais mettre un classeur exemple sur
www.cjoint.com. Efface les données confidentielles.
Pour ce qui est de la différence entre Target et ActiveCell, ce n'est pas
systématique, ça dépend de l'option que tu choisis après avoir appuyé sur
"Entrée". Si tu choisis de déplacer la cellule active, alors tu as une
différence.
Daniel
"J@@" a écrit dans le message de news:

Bonjour Daniel
Avec ActiveWorkBook.FollowHyperlink Activecell
J'ai une erreur d'exécution'-2147221014(800401ea)':
"Impossible d'ouvrir le fichier spécifié"

En bricolant
ActiveWorkbook.FollowHyperlink Address:= ActiveCell.Name
J'ai une erreur 1004

De plus, en effet, Target est équivalent à activecell
Pourtant Application.Goto ActiveCell, True me sélectionne bien la cellule
où est le lien hypertexte
Mais quand je demande MsgBox "Le lien provient de " & Target.Address
C'est la cellule A5 où est la liste dérouante qui est retournée.
Grrrr, comment faire ?
Merci pour les tuyaux
@+
J@@



Bonsoir.
Si j'ai bien compris, si la cellule active contient l'adresse :
ActiveWorkBook.FollowHyperlink Activecell
Fais aussi que Target n'est pas équivalent à Activecell.
Cordialement.
Daniel
"J@@" <
pas moyen de suivre l'hyperlien présent dans la formule de la cellule.

Private Sub Worksheet_Change(ByVal Target As Range)
If Target.Address = "$A$5" And Target.Count = 1 Then
Columns("d:d").Find(What:=Target.Value, LookIn:=xlValues).Select
With Selection
'Application.Goto ActiveCell, True
'.FollowHyperlink 'cela ne marche pas, que faire svp
End With
End If
End Sub

Avec ce code je selectionne la cellule visée par une liste déroulante.

Private Sub Worksheet_Change(ByVal Target As Range)
If Target.Address = "$A$5" And Target.Count = 1 Then
Columns("d:d").Find(What:=Target.Value, LookIn:=xlValues).Select
End If
End Sub

Mais comment activer l'hyperlien contenu dans la cellule selectionnée?
=LIEN_HYPERTEXTE("[test.xls]RAA!$A$1";"RAA")
pour arriver à la cellule que cible cette formule (qui change quand A5
change, bien sûr)












Avatar
Philippe.R
Bon{j,s}o{u,i}r J@@,
(p'tain, m'était gouré de ficelle, moi !)
Si tu remplaces :
' ActiveWorkbook.FollowHyperlink Address:¬tiveCell.Name 'ça
plante
'' End With
par :
Sheets(Target.Value).Activate
ça convient ?
--
Avec plaisir
http://dj.joss.free.fr/trombine.htm
Philippe.R
Pour se connecter au forum :
http://www.excelabo.net/mpfe/connexion.php
News://news.microsoft.com/microsoft.public.fr.excel
"J@@" a écrit dans le message de
news:%
Bonjour Daniel
voici le lien Cjoint
http://cjoint.com/?mteNMZm7E5
En fait en sélectionant en A5 une donnée, on devrait être dirigé vers la
feuille ciblée par les hyperliens en D7:D9.
Ensuite mon intention est que cela fonctionne pour chaque cellule A:A qui
contiendra cette liste de validation (et cela seulement lorsqu'en colonne
C:C on a 1)
Merci pour ton attention
cordialement
J@@


Bonjour.
On gagnerait du temps si tu pouvais mettre un classeur exemple sur
www.cjoint.com. Efface les données confidentielles.
Pour ce qui est de la différence entre Target et ActiveCell, ce n'est pas
systématique, ça dépend de l'option que tu choisis après avoir appuyé sur
"Entrée". Si tu choisis de déplacer la cellule active, alors tu as une
différence.
Daniel
"J@@" a écrit dans le message de news:

Bonjour Daniel
Avec ActiveWorkBook.FollowHyperlink Activecell
J'ai une erreur d'exécution'-2147221014(800401ea)':
"Impossible d'ouvrir le fichier spécifié"

En bricolant
ActiveWorkbook.FollowHyperlink Address:= ActiveCell.Name
J'ai une erreur 1004

De plus, en effet, Target est équivalent à activecell
Pourtant Application.Goto ActiveCell, True me sélectionne bien la
cellule où est le lien hypertexte
Mais quand je demande MsgBox "Le lien provient de " & Target.Address
C'est la cellule A5 où est la liste dérouante qui est retournée.
Grrrr, comment faire ?
Merci pour les tuyaux
@+
J@@



Bonsoir.
Si j'ai bien compris, si la cellule active contient l'adresse :
ActiveWorkBook.FollowHyperlink Activecell
Fais aussi que Target n'est pas équivalent à Activecell.
Cordialement.
Daniel
"J@@" <
pas moyen de suivre l'hyperlien présent dans la formule de la cellule.

Private Sub Worksheet_Change(ByVal Target As Range)
If Target.Address = "$A$5" And Target.Count = 1 Then
Columns("d:d").Find(What:=Target.Value,
LookIn:=xlValues).Select
With Selection
'Application.Goto ActiveCell, True
'.FollowHyperlink 'cela ne marche pas, que faire svp
End With
End If
End Sub

Avec ce code je selectionne la cellule visée par une liste
déroulante.

Private Sub Worksheet_Change(ByVal Target As Range)
If Target.Address = "$A$5" And Target.Count = 1 Then
Columns("d:d").Find(What:=Target.Value, LookIn:=xlValues).Select
End If
End Sub

Mais comment activer l'hyperlien contenu dans la cellule
selectionnée?
=LIEN_HYPERTEXTE("[test.xls]RAA!$A$1";"RAA")
pour arriver à la cellule que cible cette formule (qui change quand
A5 change, bien sûr)













Avatar
J
Bonjour Philippe
Super. Ca marche au poil.

If Target.Address = "$A$5" And Target.Count = 1 Then
Columns("d:d").Find(What:=Target.Value, LookIn:=xlValues).Select
Sheets(Target.Value).Activate
End If

Si j'osais une petite question supplémentaire:

Au lieu de tester seulement sur $A$5, je souhaiterais :
Selon la valeur de la liste déroulante dans la colonne A et si la valeur
dans la colonne C (de la même ligne) est "1"
Then
Columns("d:d").Find(What:=Target.Value, LookIn:=xlValues).Select
Sheets(Target.Value).Activate
Tu vois quelque chose?
Merci
@+
J@@


Bon{j,s}o{u,i}r J@@,
(p'tain, m'était gouré de ficelle, moi !)
Si tu remplaces :
' ActiveWorkbook.FollowHyperlink Address:¬tiveCell.Name 'ça
plante
'' End With
par :
Sheets(Target.Value).Activate
ça convient ?


Avatar
Philippe.R
Bon{j,s}o{u,i}r J@@,
On pourrait essayer :

if not intersect(target,range("a:a")) is nothing and _
cells(target.row,"c") = 1 then
Columns("d:d").Find(What:=Target.Value, LookIn:=xlValues).Select
Sheets(Target.Value).Activate
endif
--
Avec plaisir
http://dj.joss.free.fr/trombine.htm
Philippe.R
Pour se connecter au forum :
http://www.excelabo.net/mpfe/connexion.php
News://news.microsoft.com/microsoft.public.fr.excel
"J@@" a écrit dans le message de
news:%
Bonjour Philippe
Super. Ca marche au poil.

If Target.Address = "$A$5" And Target.Count = 1 Then
Columns("d:d").Find(What:=Target.Value, LookIn:=xlValues).Select
Sheets(Target.Value).Activate
End If

Si j'osais une petite question supplémentaire:

Au lieu de tester seulement sur $A$5, je souhaiterais :
Selon la valeur de la liste déroulante dans la colonne A et si la valeur
dans la colonne C (de la même ligne) est "1"
Then
Columns("d:d").Find(What:=Target.Value, LookIn:=xlValues).Select
Sheets(Target.Value).Activate
Tu vois quelque chose?
Merci
@+
J@@


Bon{j,s}o{u,i}r J@@,
(p'tain, m'était gouré de ficelle, moi !)
Si tu remplaces :
' ActiveWorkbook.FollowHyperlink Address:¬tiveCell.Name 'ça
plante
'' End With
par :
Sheets(Target.Value).Activate
ça convient ?




Avatar
J
Bonjour Philippe
super :-)
c'est impeccable
Un grand merci
et Joyeuses Fêtes
@+
J@@

Bon{j,s}o{u,i}r J@@,
On pourrait essayer :

if not intersect(target,range("a:a")) is nothing and _
cells(target.row,"c") = 1 then
Columns("d:d").Find(What:=Target.Value, LookIn:=xlValues).Select
Sheets(Target.Value).Activate
endif


1 2