XL 2016 Lien hypertexte vers une cellule mouvante

athos

XLDnaute Nouveau
Bonjour,

Voilà je dispose d'un fichier excel avec 2 feuilles comportant chacune un tableau (un tableau avec une liste de bateaux sur la première feuille, et un tableau avec une liste d'armateurs sur la deuxième). J'aimerais pouvoir insérer dans mon premier tableau une colonne avec des liens hypertextes renvoyant vers l'armateur dans le deuxième tableau. Mais si je définis mon lien hypertexte de manière "classique", en donnant le numéro de cellule de l'armateur dans le deuxième tableau je suis eu... En effet dès que je rajoute un nouvel armateur dans mon deuxième tableau et que je trie par ordre alphabétique par exemple, tous les numéros changent. J'ai pas mal cherché et je ne trouve pas comment résoudre. Peut-être en définissant le lien hypertexte par une valeur de cellule? Mais je n'ai pas réussi à le faire 😅

Auriez vous une solution?

Merci.
 

Pièces jointes

  • test_bdd.xlsx
    11.9 KB · Affichages: 22

sylvanu

XLDnaute Barbatruc
Supporter XLD
Bonsoir Athos,
Sivous appelez les cellules de destination avec un petit nom, alors le lien hypertext sera indépendant de la cellule. Voir PJ.
Quand vous insérez votre lien vous recherchez le nom dans la feuille :
1614629873911.png
 

Pièces jointes

  • test_bdd (1).xlsx
    10.9 KB · Affichages: 8

athos

XLDnaute Nouveau
merci pour votre réponse rapide mais j'ai l'impression que cela me donne toujours le même problème: quand je nomme une cellule, le nom s'applique à la position de la cellule et pas au contenu: donc si je décide de trier différemment le deuxième tableau, les liens m'envoient au mauvais endroit je crois.
 

sylvanu

XLDnaute Barbatruc
Supporter XLD
Re,
@job,
Daignez accepter que cette solution ne me plaise guère, car trop contraignante. Elle oblige l'utilisateur à entrer une formule à chaque cellule de société, c'est lourd.
@athos,
Une solution en VBA. Il n'y a rien à faire. Un clic sur un nom connu renvoie sur la bonne cellule, même après un tri. Avec :
VB:
Private Sub Worksheet_SelectionChange(ByVal Target As Range)
On Error GoTo Fin
    If Target.Count > 1 Then Exit Sub
    If Not Intersect(Target, Range("B2:B1000")) Is Nothing And Target <> "" Then
        Ligne = Application.Match(Target, Sheets("société").Range("A:A"), 0)
        If IsError(Ligne) Then Exit Sub
        Sheets("société").Activate
        Sheets("société").Cells(Ligne, "A").Select
    End If
Fin:
End Sub
 

Pièces jointes

  • test_bdd (1) (1).xlsm
    17.5 KB · Affichages: 7

athos

XLDnaute Nouveau
Merci pour vos réponses à tous les deux. Dernière question, si je veux utiliser la valeur d'une cellule dans une formule comment faire ? Ici, ce serait pour "automatiser" le processus : j'imagine une première colonne que je remplis avec le nom de l'armateur et une deuxième colonne qui donnerait directement le lien hypertexte.
La formule dans mon cas est :
VB:
=LIEN_HYPERTEXTE("#société!A"&EQUIV("Société3";société!A:A;0);"société3")
 

sylvanu

XLDnaute Barbatruc
Supporter XLD
Non, c'est seulement que le titre que vous avez donné est "Lien hypertexte" et que j'ai répondu par une solution VBA, qui à mes yeux est beaucoup plus simple et souple que des formules.
Mais comme vous n'y avez pas répondu, c'est que vous tenez à vos liens hypertextes.
 

Discussions similaires