D'accord parfait ce sera plus facile.
2 méthodes : ou bien parcourir la liste des liens directement, mais elle est stockée dans la feuille et non dans les cellules comme on pourait le penser. Donc il faut voir, par exemple si vous connaissez le lien initial (lien1) et le lien final (lien2). On peut faire une boucle du type :
For Each lnk in Worksheets(1).Hyperlinks
If lnk.Address = link1 Then lnk.Address = link2
Next lnk
Autrement, on peut boucler sur les cellules et récupérer le lien contenu dans la cellule, c'est plus intuitif comme procédé mais le code est un peu plus long.Auquel cas il faut procéder ainsi :
For Each c in Range("A1:A10")
If c.Hyperlinks(1).Address = link1 Then c.Hyperlinks(1).Address = link2
Next c
Vous vous doutez bien, pour éviter d'avoir une foison de If, il faudrait créer une table de correspondance entre les liens de départ et modifiés, afin de simplifier le code.