lien hypertexte dynamique

Boostez vos compétences Excel avec notre communauté !

Rejoignez Excel Downloads, le rendez-vous des passionnés où l'entraide fait la force. Apprenez, échangez, progressez – et tout ça gratuitement ! 👉 Inscrivez-vous maintenant !

habasque

XLDnaute Nouveau
salut a tous,
je souhaiterais savoir s'il est possible de creer des liens hypertextes dynamiques.
je m'explique en m'appuyant sur le fichier en piece jointe.
par exemple, en C28 j'aimerai que HCS-003 m'envoie directement sur la ligne correspondante du feuillet 2.
mais de maniere dynamique donc j'imagine qu'il faut creer une fonction VBA pour prendre passer en parametre le code recherche???
si quelqu'un a une idee, je pense que pour une personne connaissant VBA, cela ne doit pas etre trop complique mais moi ce n'est pas du tout mon fort...
merci d'avance
jeremie
 

Pièces jointes

Re : lien hypertexte dynamique

bonjour nat

c'est tout bête.

il s'agit d'une macro evenementielle (donc placé dans le module de la feuille)

Code:
Private Sub Worksheet_[COLOR=Red]FollowHyperlink[/COLOR](ByVal [COLOR=Red]Target [/COLOR]As Hyperlink)
Dim c As Range

With ActiveSheet
    Set c = .Columns(1).Find([COLOR=Red]Target.TextToDisplay[/COLOR])
    If Not c Is Nothing Then
        c.Select
    Else
        MsgBox "référence non trouvée"
    End If
End With
        
End Sub
_FollowHyperlink le code ne se déclenche que si il s'agit d'un lien hypertext

Target renvoi la cellule ayant lancée le déclenchement du code

Target.TextToDisplay = renvoi le texte affiché par le lien

il suffit ensuite de rechercher (.find) dans la colonne 1
(.Columns(1)) le texte du lien

et de le stocker dans une variable nommée c (set c=)

si c n'est pas vide (if not c is nothing) alors on sélectionne la cellule (c.select), sinon on renvoi un msgbox (msgbox...)

voilà

salut


 
Re : lien hypertexte dynamique

Bonjour
Je ne comprends qu'aux 3/4 comment ça marche (la syntaxe est très optimisée !)
mais c'est génial.
Je ne sais pas quand mais je suis sûre que je l'utiliserai.
Merci de cette perle que j'enfile à mon collier de belles astuces VBA.
 
Re : lien hypertexte dynamique

chris à dit:
Habasque
Veux-tu que l'yperlien t'amène sur le nom au lieu de la référence ?
Si oui
remplace
c.select
par
c.Offset(0, 1).Select

Sinon explique exactement ce que tu veux



impeccable, c ca que je voulais.
merci pour ce coup de main.
maintenant, on me demande d'avoir le nom de la personne en info bulle lorsque je passe sur le lien du feuillet 1 mais ca je pense que c complique...???
 
Re : lien hypertexte dynamique

Bonsoir,

tu adaptes le code d'Hervé par exemple comme ça :
Code:
Private Sub Worksheet_Activate()
For Each h In ActiveSheet.Hyperlinks
    vfeuille = Left(h.SubAddress, InStr(h.SubAddress, "!") - 1)
    Set c = Sheets(vfeuille).Columns(1).Find(h.TextToDisplay)
    If Not c Is Nothing Then
        h.ScreenTip = c.Offset(0, 2).Value
    Else
        h.ScreenTip = "référence non trouvée"
    End If
Next
End Sub

cordialement
 
Re : lien hypertexte dynamique

ODVJ à dit:
Bonsoir,

tu adaptes le code d'Hervé par exemple comme ça :
Code:
Private Sub Worksheet_Activate()
For Each h In ActiveSheet.Hyperlinks
    vfeuille = Left(h.SubAddress, InStr(h.SubAddress, "!") - 1)
    Set c = Sheets(vfeuille).Columns(1).Find(h.TextToDisplay)
    If Not c Is Nothing Then
        h.ScreenTip = c.Offset(0, 2).Value
    Else
        h.ScreenTip = "référence non trouvée"
    End If
Next
End Sub

cordialement

excellent !
merci beaucoup...
 
Re : lien hypertexte dynamique

Bonsoir à tous,
Habasque pourrais-tu posté ton fichier modifié car je n'arrive pas à modifier le code (à mélanger les deux en fait où alors je ne le place pas au bon endroit étant qu'un simple débutant en VBA).
Merci d'avance et bonne soirée.
 
Re : lien hypertexte dynamique

chris à dit:
Bonjour
Je ne comprends qu'aux 3/4 comment ça marche (la syntaxe est très optimisée !)
mais c'est génial.
Je ne sais pas quand mais je suis sûre que je l'utiliserai.
Merci de cette perle que j'enfile à mon collier de belles astuces VBA.
Idem hop dans le fichier "exemple macro" 🙂
merci Hervé
 
Re : lien hypertexte dynamique

Bonsoir à tous,
En fait la macro de d'ODVJ fonctionne parfaitement mais on ne peu plus sélectionner le nom quand on clique sur le lien : le curseur se positionne toujours en A1 et nom sur le nom de la colonne 2 comme le souhaitais Habasque. Est-il est possible d'y remédier ? Enfin on ne peut pas avoir le beurre, l'argent du beurre et le ... de la crémière.
Bonne soirée.
 
- Navigue sans publicité
- Accède à Cléa, notre assistante IA experte Excel... et pas que...
- Profite de fonctionnalités exclusives
Ton soutien permet à Excel Downloads de rester 100% gratuit et de continuer à rassembler les passionnés d'Excel.
Je deviens Supporter XLD

Discussions similaires

Réponses
23
Affichages
2 K
Réponses
41
Affichages
3 K
Retour