Est-il possible d'activer ou de d=E9sactiver un lien hypertexte en
fonction d'un contenu de cellule?
En A2 j'ai un lien hypertexte que je voudrais actif seulement si en A1
le contenu de ma cellule est une x ou X.
Merci des r=E9ponses.
JPierre
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
FFO
Salut à toi
Crées ton lien Hypertexte en A2 Puis mets dans le VBA de ta feuille ce code :
Private Sub Worksheet_Change(ByVal Target As Range) If Target.Address = Range("A1").Address Then On Error Resume Next If Target = "x" Then ActiveSheet.Hyperlinks.Add Anchor:=Range("A2"), Address:="", SubAddress:= _ "" & Range("A2") & "", TextToDisplay:="" & Range("A2") & "" End If If Target = "X" Then Range("A2").Hyperlinks(1).Delete End If End If End Sub
En A1 saisis "x" ou "X"
Celà devrait te convenir
Dis moi !!!!
Salut à toi
Crées ton lien Hypertexte en A2
Puis mets dans le VBA de ta feuille ce code :
Private Sub Worksheet_Change(ByVal Target As Range)
If Target.Address = Range("A1").Address Then
On Error Resume Next
If Target = "x" Then
ActiveSheet.Hyperlinks.Add Anchor:=Range("A2"), Address:="", SubAddress:= _
"" & Range("A2") & "", TextToDisplay:="" & Range("A2") & ""
End If
If Target = "X" Then
Range("A2").Hyperlinks(1).Delete
End If
End If
End Sub
Crées ton lien Hypertexte en A2 Puis mets dans le VBA de ta feuille ce code :
Private Sub Worksheet_Change(ByVal Target As Range) If Target.Address = Range("A1").Address Then On Error Resume Next If Target = "x" Then ActiveSheet.Hyperlinks.Add Anchor:=Range("A2"), Address:="", SubAddress:= _ "" & Range("A2") & "", TextToDisplay:="" & Range("A2") & "" End If If Target = "X" Then Range("A2").Hyperlinks(1).Delete End If End If End Sub
En A1 saisis "x" ou "X"
Celà devrait te convenir
Dis moi !!!!
jthillard
Merci FFO, J'ai peut être omis une précision. Le lien hypertexte doit resté, il ne faut pas qu'il soit effecé. Il doit être actif si il y a une croix en A1 en revanche, il doit être inactif s'il n'y a pas de croix. Dans ta macro que je viens de tester, si la croix est en A1, le lien ne renvoie pas vers l'adresse souhaitée. Si la croix n'existe pas en A1, le lien hypertexte est supprimé. Ce n'est pas du tout ce que je souhaite obtenir. Désolé. JPierre On 27 jan, 10:17, FFO wrote:
Salut à toi
Crées ton lien Hypertexte en A2 Puis mets dans le VBA de ta feuille ce code :
Private Sub Worksheet_Change(ByVal Target As Range) If Target.Address = Range("A1").Address Then On Error Resume Next If Target = "x" Then ActiveSheet.Hyperlinks.Add Anchor:=Range("A2"), Address:="", SubAd dress:= _ "" & Range("A2") & "", TextToDisplay:="" & Range("A2") & "" End If If Target = "X" Then Range("A2").Hyperlinks(1).Delete End If End If End Sub
En A1 saisis "x" ou "X"
Celà devrait te convenir
Dis moi !!!!
Merci FFO,
J'ai peut être omis une précision. Le lien hypertexte doit resté, il
ne faut pas qu'il soit effecé. Il doit être actif si il y a une croix
en A1 en revanche, il doit être inactif s'il n'y a pas de croix.
Dans ta macro que je viens de tester, si la croix est en A1, le lien
ne renvoie pas vers l'adresse souhaitée.
Si la croix n'existe pas en A1, le lien hypertexte est supprimé.
Ce n'est pas du tout ce que je souhaite obtenir.
Désolé.
JPierre
On 27 jan, 10:17, FFO <F...@discussions.microsoft.com> wrote:
Salut à toi
Crées ton lien Hypertexte en A2
Puis mets dans le VBA de ta feuille ce code :
Private Sub Worksheet_Change(ByVal Target As Range)
If Target.Address = Range("A1").Address Then
On Error Resume Next
If Target = "x" Then
ActiveSheet.Hyperlinks.Add Anchor:=Range("A2"), Address:="", SubAd dress:= _
"" & Range("A2") & "", TextToDisplay:="" & Range("A2") & ""
End If
If Target = "X" Then
Range("A2").Hyperlinks(1).Delete
End If
End If
End Sub
Merci FFO, J'ai peut être omis une précision. Le lien hypertexte doit resté, il ne faut pas qu'il soit effecé. Il doit être actif si il y a une croix en A1 en revanche, il doit être inactif s'il n'y a pas de croix. Dans ta macro que je viens de tester, si la croix est en A1, le lien ne renvoie pas vers l'adresse souhaitée. Si la croix n'existe pas en A1, le lien hypertexte est supprimé. Ce n'est pas du tout ce que je souhaite obtenir. Désolé. JPierre On 27 jan, 10:17, FFO wrote:
Salut à toi
Crées ton lien Hypertexte en A2 Puis mets dans le VBA de ta feuille ce code :
Private Sub Worksheet_Change(ByVal Target As Range) If Target.Address = Range("A1").Address Then On Error Resume Next If Target = "x" Then ActiveSheet.Hyperlinks.Add Anchor:=Range("A2"), Address:="", SubAd dress:= _ "" & Range("A2") & "", TextToDisplay:="" & Range("A2") & "" End If If Target = "X" Then Range("A2").Hyperlinks(1).Delete End If End If End Sub
En A1 saisis "x" ou "X"
Celà devrait te convenir
Dis moi !!!!
jthillard
FFO, Désolé, j'ai dit une bêtise. je vais encore tester mais à prio ri croix ou pas croix en A1, le lien est actif dans tous les cas. Je teste et je te dis un peu plus tard. JPierre
On 27 jan, 10:17, FFO wrote:
Salut à toi
Crées ton lien Hypertexte en A2 Puis mets dans le VBA de ta feuille ce code :
Private Sub Worksheet_Change(ByVal Target As Range) If Target.Address = Range("A1").Address Then On Error Resume Next If Target = "x" Then ActiveSheet.Hyperlinks.Add Anchor:=Range("A2"), Address:="", SubAd dress:= _ "" & Range("A2") & "", TextToDisplay:="" & Range("A2") & "" End If If Target = "X" Then Range("A2").Hyperlinks(1).Delete End If End If End Sub
En A1 saisis "x" ou "X"
Celà devrait te convenir
Dis moi !!!!
FFO, Désolé, j'ai dit une bêtise. je vais encore tester mais à prio ri
croix ou pas croix en A1, le lien est actif dans tous les cas.
Je teste et je te dis un peu plus tard.
JPierre
On 27 jan, 10:17, FFO <F...@discussions.microsoft.com> wrote:
Salut à toi
Crées ton lien Hypertexte en A2
Puis mets dans le VBA de ta feuille ce code :
Private Sub Worksheet_Change(ByVal Target As Range)
If Target.Address = Range("A1").Address Then
On Error Resume Next
If Target = "x" Then
ActiveSheet.Hyperlinks.Add Anchor:=Range("A2"), Address:="", SubAd dress:= _
"" & Range("A2") & "", TextToDisplay:="" & Range("A2") & ""
End If
If Target = "X" Then
Range("A2").Hyperlinks(1).Delete
End If
End If
End Sub
FFO, Désolé, j'ai dit une bêtise. je vais encore tester mais à prio ri croix ou pas croix en A1, le lien est actif dans tous les cas. Je teste et je te dis un peu plus tard. JPierre
On 27 jan, 10:17, FFO wrote:
Salut à toi
Crées ton lien Hypertexte en A2 Puis mets dans le VBA de ta feuille ce code :
Private Sub Worksheet_Change(ByVal Target As Range) If Target.Address = Range("A1").Address Then On Error Resume Next If Target = "x" Then ActiveSheet.Hyperlinks.Add Anchor:=Range("A2"), Address:="", SubAd dress:= _ "" & Range("A2") & "", TextToDisplay:="" & Range("A2") & "" End If If Target = "X" Then Range("A2").Hyperlinks(1).Delete End If End If End Sub
En A1 saisis "x" ou "X"
Celà devrait te convenir
Dis moi !!!!
jthillard
FFO,
Voilà de retour avec un peu de mal. J'ai pour commencé mélangé A2 e t B1. Alors pardon! Voilà ce que j'ai constaté: La macro fonctionne mais il reste un problème tout de même gênant. Jentre un texte en A2 auquel japplique un lien hypertexte. Je mets la macro dans la feuille correspondante. Si je clique en A2 sur le lien hypertexte, Excel me renvoie le message derreur suivant : « Référence non valide ». Alors jai cliqué sur mon lien hypertexte pour le modifier et à ce moment la, la macro minscrit en A2 ladresse du lien hypertexte et supprime mon texte initial. Pas cool ! Il y a-t-il quelque chose à faire docteur ? Merci pour ton aide.
On 27 jan, 10:17, FFO wrote:
Salut à toi
Crées ton lien Hypertexte en A2 Puis mets dans le VBA de ta feuille ce code :
Private Sub Worksheet_Change(ByVal Target As Range) If Target.Address = Range("A1").Address Then On Error Resume Next If Target = "x" Then ActiveSheet.Hyperlinks.Add Anchor:=Range("A2"), Address:="", SubAd dress:= _ "" & Range("A2") & "", TextToDisplay:="" & Range("A2") & "" End If If Target = "X" Then Range("A2").Hyperlinks(1).Delete End If End If End Sub
En A1 saisis "x" ou "X"
Celà devrait te convenir
Dis moi !!!!
FFO,
Voilà de retour avec un peu de mal. J'ai pour commencé mélangé A2 e t
B1. Alors pardon!
Voilà ce que j'ai constaté:
La macro fonctionne mais il reste un problème tout de même gênant.
Jentre un texte en A2 auquel japplique un lien hypertexte. Je mets
la macro dans la feuille correspondante. Si je clique en A2 sur le
lien hypertexte, Excel me renvoie le message derreur suivant : «
Référence non valide ».
Alors jai cliqué sur mon lien hypertexte pour le modifier et à ce
moment la, la macro minscrit en A2 ladresse du lien hypertexte et
supprime mon texte initial. Pas cool !
Il y a-t-il quelque chose à faire docteur ?
Merci pour ton aide.
On 27 jan, 10:17, FFO <F...@discussions.microsoft.com> wrote:
Salut à toi
Crées ton lien Hypertexte en A2
Puis mets dans le VBA de ta feuille ce code :
Private Sub Worksheet_Change(ByVal Target As Range)
If Target.Address = Range("A1").Address Then
On Error Resume Next
If Target = "x" Then
ActiveSheet.Hyperlinks.Add Anchor:=Range("A2"), Address:="", SubAd dress:= _
"" & Range("A2") & "", TextToDisplay:="" & Range("A2") & ""
End If
If Target = "X" Then
Range("A2").Hyperlinks(1).Delete
End If
End If
End Sub
Voilà de retour avec un peu de mal. J'ai pour commencé mélangé A2 e t B1. Alors pardon! Voilà ce que j'ai constaté: La macro fonctionne mais il reste un problème tout de même gênant. Jentre un texte en A2 auquel japplique un lien hypertexte. Je mets la macro dans la feuille correspondante. Si je clique en A2 sur le lien hypertexte, Excel me renvoie le message derreur suivant : « Référence non valide ». Alors jai cliqué sur mon lien hypertexte pour le modifier et à ce moment la, la macro minscrit en A2 ladresse du lien hypertexte et supprime mon texte initial. Pas cool ! Il y a-t-il quelque chose à faire docteur ? Merci pour ton aide.
On 27 jan, 10:17, FFO wrote:
Salut à toi
Crées ton lien Hypertexte en A2 Puis mets dans le VBA de ta feuille ce code :
Private Sub Worksheet_Change(ByVal Target As Range) If Target.Address = Range("A1").Address Then On Error Resume Next If Target = "x" Then ActiveSheet.Hyperlinks.Add Anchor:=Range("A2"), Address:="", SubAd dress:= _ "" & Range("A2") & "", TextToDisplay:="" & Range("A2") & "" End If If Target = "X" Then Range("A2").Hyperlinks(1).Delete End If End If End Sub
En A1 saisis "x" ou "X"
Celà devrait te convenir
Dis moi !!!!
FFO
Rebonjour à toi Je suis formel si tu as respecté mes consignes tu mets un "x" en A1 le lien est activé si tu mets un "X" en A1 ce lien est supprimé
Par contre si ton lien hypertexe correspond à un fichier et non à une cellule du même document mets dans le VBA de la feuille ce code :
Private Sub Worksheet_Change(ByVal Target As Range) If Target.Address = Range("A1").Address Then On Error Resume Next If Target = "x" Then ActiveSheet.Hyperlinks.Add Anchor:=Range("A2"), Address:= _ "" & Range("A2") & "", TextToDisplay:="" & Range("A2") & "" End If If Target = "X" Then Range("A2").Hyperlinks(1).Delete End If End If End Sub
Fais des essais et dis moi !!!!
Rebonjour à toi
Je suis formel si tu as respecté mes consignes tu mets un "x" en A1 le lien
est activé si tu mets un "X" en A1 ce lien est supprimé
Par contre si ton lien hypertexe correspond à un fichier et non à une
cellule du même document mets dans le VBA de la feuille ce code :
Private Sub Worksheet_Change(ByVal Target As Range)
If Target.Address = Range("A1").Address Then
On Error Resume Next
If Target = "x" Then
ActiveSheet.Hyperlinks.Add Anchor:=Range("A2"), Address:= _
"" & Range("A2") & "", TextToDisplay:="" & Range("A2") & ""
End If
If Target = "X" Then
Range("A2").Hyperlinks(1).Delete
End If
End If
End Sub
Rebonjour à toi Je suis formel si tu as respecté mes consignes tu mets un "x" en A1 le lien est activé si tu mets un "X" en A1 ce lien est supprimé
Par contre si ton lien hypertexe correspond à un fichier et non à une cellule du même document mets dans le VBA de la feuille ce code :
Private Sub Worksheet_Change(ByVal Target As Range) If Target.Address = Range("A1").Address Then On Error Resume Next If Target = "x" Then ActiveSheet.Hyperlinks.Add Anchor:=Range("A2"), Address:= _ "" & Range("A2") & "", TextToDisplay:="" & Range("A2") & "" End If If Target = "X" Then Range("A2").Hyperlinks(1).Delete End If End If End Sub
Fais des essais et dis moi !!!!
FFO
Rebonjour à toi
Il faut pour pouvoir établir le lien que je puisse avec mon code connaitre son adresse Soit l'adresse ne change pas et on le met en dur dans le code soit elle est mouvante auquel cas il faut me donner le moyen de l'avoir J'avais baser le fonctionnement sur la cellule A2 pour le récupérer mais si tu mets à la place un texte je suis coincé !!!!! Il faut me donner une solution (une cellule quelconque par exemple)
Merci de me dire !!!!
Rebonjour à toi
Il faut pour pouvoir établir le lien que je puisse avec mon code connaitre
son adresse
Soit l'adresse ne change pas et on le met en dur dans le code soit elle est
mouvante auquel cas il faut me donner le moyen de l'avoir
J'avais baser le fonctionnement sur la cellule A2 pour le récupérer mais si
tu mets à la place un texte je suis coincé !!!!!
Il faut me donner une solution (une cellule quelconque par exemple)
Il faut pour pouvoir établir le lien que je puisse avec mon code connaitre son adresse Soit l'adresse ne change pas et on le met en dur dans le code soit elle est mouvante auquel cas il faut me donner le moyen de l'avoir J'avais baser le fonctionnement sur la cellule A2 pour le récupérer mais si tu mets à la place un texte je suis coincé !!!!! Il faut me donner une solution (une cellule quelconque par exemple)
Merci de me dire !!!!
jthillard
FFO, Tu as raison d'insister. Mon lien faisait référence à un fichier autre. La deuxième solution est très bonne. Elle fonctionne très bien, je vais l'adapter au contexte. Merci encore. JPierre
On 27 jan, 12:00, FFO wrote:
Rebonjour à toi Je suis formel si tu as respecté mes consignes tu mets un "x" en A1 le lien est activé si tu mets un "X" en A1 ce lien est supprimé
Par contre si ton lien hypertexe correspond à un fichier et non à une cellule du même document mets dans le VBA de la feuille ce code :
Private Sub Worksheet_Change(ByVal Target As Range) If Target.Address = Range("A1").Address Then On Error Resume Next If Target = "x" Then ActiveSheet.Hyperlinks.Add Anchor:=Range("A2"), Address:= _ "" & Range("A2") & "", TextToDisplay:="" & Range("A2") & "" End If If Target = "X" Then Range("A2").Hyperlinks(1).Delete End If End If End Sub
Fais des essais et dis moi !!!!
FFO,
Tu as raison d'insister. Mon lien faisait référence à un fichier
autre.
La deuxième solution est très bonne.
Elle fonctionne très bien, je vais l'adapter au contexte.
Merci encore.
JPierre
On 27 jan, 12:00, FFO <F...@discussions.microsoft.com> wrote:
Rebonjour à toi
Je suis formel si tu as respecté mes consignes tu mets un "x" en A1 le lien
est activé si tu mets un "X" en A1 ce lien est supprimé
Par contre si ton lien hypertexe correspond à un fichier et non à une
cellule du même document mets dans le VBA de la feuille ce code :
Private Sub Worksheet_Change(ByVal Target As Range)
If Target.Address = Range("A1").Address Then
On Error Resume Next
If Target = "x" Then
ActiveSheet.Hyperlinks.Add Anchor:=Range("A2"), Address:= _
"" & Range("A2") & "", TextToDisplay:="" & Range("A2") & ""
End If
If Target = "X" Then
Range("A2").Hyperlinks(1).Delete
End If
End If
End Sub
FFO, Tu as raison d'insister. Mon lien faisait référence à un fichier autre. La deuxième solution est très bonne. Elle fonctionne très bien, je vais l'adapter au contexte. Merci encore. JPierre
On 27 jan, 12:00, FFO wrote:
Rebonjour à toi Je suis formel si tu as respecté mes consignes tu mets un "x" en A1 le lien est activé si tu mets un "X" en A1 ce lien est supprimé
Par contre si ton lien hypertexe correspond à un fichier et non à une cellule du même document mets dans le VBA de la feuille ce code :
Private Sub Worksheet_Change(ByVal Target As Range) If Target.Address = Range("A1").Address Then On Error Resume Next If Target = "x" Then ActiveSheet.Hyperlinks.Add Anchor:=Range("A2"), Address:= _ "" & Range("A2") & "", TextToDisplay:="" & Range("A2") & "" End If If Target = "X" Then Range("A2").Hyperlinks(1).Delete End If End If End Sub