Microsoft 365 Choisir en VBA une cellule "variable" dans 1 colonne

  • Initiateur de la discussion Initiateur de la discussion JBL07
  • Date de début Date de début

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 !

JBL07

XLDnaute Occasionnel
Hello !
Mon pb du jour, encore une fois besoin de vos compétences… :
1 Fichier clients
1 colonne O avec les ref clients
1 colonne Q avec les liens hypertexte, renvoyant à des doc Word qui contiennent des infos, 1 doc par client
1 cellule Z1, vers laquelle est renvoyée la ref client, selon la cellule que je sélectionne dans ma colonne O
1 bouton de commande, associé à la macro suivante ( faite avec l'enregistreur ), qui ouvre le document Word du 1° client:

Sub Ouvrir_Fiche_Client_Word()
' Ouvrir_Fiche_Client_Word Macro
Range("Q2:Q2000").Select
Selection.Hyperlinks(1).Follow NewWindow:=False, AddHistory:=True
End Sub

Mais je ne sais pas faire varier la sélection de l'hyperlien avec cette macro, pour que si je sélectionne le client 2, ce soit bien son lien hypertexte, et donc son document word qui s'ouvre
Autrement dit, je veux que, sélectionnant 1 cellule en colonne O, elle soit renvoyée en Z1 ( ça fonctionne ), et que le bon doc s'ouvre qd je clique sur mon bouton de commande
En l'état, bien que ma cellule Z1 affiche la bonne sélection, c'est toujours le 1° lien hypertexte qui s'ouvre...

Si je ne suis pas clair, n'hésitez pas à me le dire 🙂
Merci pour votre aide
 
Bonjour,
Je ne comprends pas trop pourquoi tu passes par Z1 pour afficher le document client car s'il y a un Hyperlink dans la cellule Qx il suffit de cliquer dans cette cellule pour afficher le document.

Mais bon... Si tu veux accéder au bon lien il faut que tu passes la ligne ou la cellules O concernée en paramètre de ta fonction.

VB:
.../...
Call Ouvrir_Fiche_Client_Word(<cellule O sélectionnée>)
.../...
Sub Ouvrir_Fiche_Client_Word(CelluleO as Range)
    ' Ouvrir_Fiche_Client_Word Macro
    CelluleO.Parent.Range("Q" & CelluleO.Row).Hyperlinks(1).Follow NewWindow:=False, AddHistory:=True
End Sub
ou encore
VB:
.../...
Call Ouvrir_Fiche_Client_Word(<cellule O sélectionnée>)
.../...
Sub Ouvrir_Fiche_Client_Word(CelluleO as Range)
    ' Ouvrir_Fiche_Client_Word Macro
    CelluleO.Offset(0, 2).Hyperlinks(1).Follow NewWindow:=False, AddHistory:=True
End Sub
 
Merci Dudu2,

L'idée c'était de masquer la colonne des hyperliens pour un visuel plus léger -
Je dois mal intégrer tes 2 propositions, car cela génère un message d'erreur ( débogage etc ) quelles que soient mes tentatives
Pas grave, je pense que je vais rester avec ma colonne Q visible
 
- 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

Retour