Variante sur le lien hypertexte

excel-vba-produitBBonjour à tous,

Suite à mon précédent post, on peut ajouter quelques modifications au projet.

Voici le lien pour le fichier.

Petite piqure de rappel pour lier le menu déroulant à une table via un nom défini.

Tout d'abord en créant le nom sur la table :
creation_du_nom

Puis, on va revenir sur la cellule et ajouter une liste déroulante via la validation de données :
donnees_validation_listes

Finalement on ajoute la formule

Ensuite, si vous voulez que le lien fonctionne non pas sur un nom, mais en utilisant une recherche, on peut utiliser la formule suivante pour rechercher la valeur choisie en B2 dans la table contenant les données :
ADRESSE(EQUIV(B2;Tableau1[Liste des produits];0)+LIGNE(Tableau1[[#En-têtes];[Liste des produits]]);COLONNE(Tableau1[[#En-têtes];[Liste des produits]]));"Aller au " & B2)

Equiv permet de rechercher la position du produit dans la table des produits.
On utiliser ligne et colonne pour localiser ce tableau.

Il faut aussi ajuster la localisation de la feuille, soit dans la même feuille, ou bien dans une autre feuille :
=LIEN_HYPERTEXTE("[" & STXT(CELLULE("nomfichier");TROUVE("[";CELLULE("nomfichier"))+1;TROUVE("]";CELLULE("nomfichier"))-TROUVE("[";CELLULE("nomfichier"))-1) & "]" &
"'" & "Liste" & "'!"
& ADRESSE(EQUIV(B2;Tableau1[Liste des produits];0)+LIGNE(Tableau1[[#En-têtes];[Liste des produits]]);COLONNE(Tableau1[[#En-têtes];[Liste des produits]]));"Aller au " & B2)

On remarquera l'utilisation des ' ' pour encadrer le nom de la feuille, notamment lorsqu'on utilise des espaces dans les noms de feuille.

[EDIT] : Suite au commentaire de DocLeka ci-dessous, on peut aussi utiliser une formule simplifiée pour gérer le nom du classeur :
=LIEN_HYPERTEXTE(
"#'Liste'!"
& ADRESSE(EQUIV(B2;Tableau1[Liste des produits];0)+LIGNE(Tableau1[[#En-têtes];[Liste des produits]]);COLONNE(Tableau1[[#En-têtes];[Liste des produits]]));"Aller au " & B2)

Comme vous le voyez, cette approche ouvre la porte à de nombreuse possibilités de déplacements dans un fichier.

Amuez-vous bien !

Gaëtan Mourmant