Donc, comme a dit @Xmenpl, le problème vient du fait que par défaut le lien hypertexte que l'on attribue à un mot ne prend pas toute l'adresse exacte mais est du style : "..\xxx-user-2\ENR-PLASMA\RSA\xxx\Affichage\Checklist 5S tente.pdf".
Pour contrer cela, j'y vois trois façons à ma connaissance :
- Coller en brut dans une cellule l'adresse, par exemple "C:\\Users\xxx-user-2\ENR-PLASMA\RSA\xxx\Affichage\Checklist 5S tente.pdf". On récupère l'adresse en VBA via un
.Value. C'est le plus simple mais illisible dans un tableau Excel. - Rentrer toute l'adresse lorsqu'on affecte le lien hypertexte au mot. Pas très pratique et redondant.
- Anticiper et coder en VBA de façon à créer le lien attendu. C'est la solution que je trouve la plus pratique ! Cela donnerai dans ton cas présent :
Lien = "C:\Users\zinedine.zidane" & Right(.Cells(Ligne, Col - 1).Hyperlinks(1).Address, Len(.Cells(Ligne, Col - 1).Hyperlinks(1).Address) - 2) ! À adapter le "C:\Users\zinedine.zidane" en fonction de ton réseau évidemment.
C'est cette dernière solution pour laquelle j'ai opté. J'en ai également profité pour aérer ton code, le simplifier et le commenter. Incrémenter et commenter le code est hyper important, on ne se rend pas compte mais ça fait gagner un temps fou !
Voici donc ton fichier.
Avant de tester la macro, il faut que tu affectes le lien à ton mot et que tu corriges le "C:\Users\zinedine.zidane" par le début de ton adresse réseau.
En espérant t'avoir aidé, bon we,
Baboutz
PS: Je n'ai corrigé que la première moitié de ton code, après ton 'Else' tu n'as qu'à copier/coller ce que j'ai fait en faisant les quelques modifs nécessaires