Salut,
dans ton exemple, tu as mis les valeurs absolues (contenant le disque D:)
chemin_a_remplacer = "D:\test lien\" 'partie du chemin à remplacer
nouveau_chemin = "D:\test lien2\" 'le nouveau chemin
Je ne sais pas où les fichiers se situent sur ton ordinateur mais si j'unzippe ton fichier, les liens "d'origine" dans ton excel sont relatifs.
Si j'enlève la référence au disque et si je garde seulement la partie relative du lien qui est utilisée d'origine, mon code fonctionne
Remplace les deux lignes citées plus haut par ceci, et ton exemple va fonctionner:
chemin_a_remplacer = "test lien\" 'partie du chemin à remplacer
nouveau_chemin = "test lien2\" 'le nouveau chemin
A faire:
Dans ton fichier "réel' (donc pas celui de test): clique droit sur le lien --> modifier le lien --> regarde le lien comme il est indiqué dans "Adresse". Et c'est une partie de cette valeur que tu dois mettre dans la variable "chemin_a_remplacer" de mon code.
Dans ton test, mon code ne trouve tout simplement pas de chaîne "D:\test lien\" et ne peut donc pas la remplacer (car le lien utilisé est: "test lien\X\X1.pdf"
Une dernière remarque: il se peut que tu doives remplacer l'espace (" ") par "%20" mais cela tu verras si la possibilité avec espace ne marche pas.
Donc en gros:
- le code fonctionne, tu dois seulement remplir EXACTEMENT le contenu des variables "chemin_a_remplacer" et "nouveau_chemin"
- tu trouveras le chemin existant EXACT dans: clique droit sur le lien --> modifier le lien --> regarde le lien comme il est indiqué dans "Adresse"