[EXCEL] Avoir des liens relatifs

zegilooo

Membre enregistré
19 Mai 2009
1
0
Bonjour,

encore une question sur les liens entre fichier Excel.
J'ai lu ce qui existe dans ce forum, mais je voudrai éclaircir une question.

Si je crée un lien entre deux fichiers Excel,qu'ils soient dans un même dossier ou pas, le lien est absolu.
Ce qui pose un problème si le dossier est déplacé sur une autre machine.

Existe-t-il un moyen de n'avoir que des liens relatifs entre fichiers Excel ?

Merci de votre aide,
Gilles.
 
bonjour,

çà me semble peu probable, car autre chemin = autre nom .
la recherche d'un fichier "ailleurs" ou "autrement nommé" peut durer en théorie une "éternité", puisqu'il y a une infinité de possibilités.
 
Bonjour et bienvenue sur les forums de MacGénération !

C'est (éventuellement) envisageable par une macro WorkBook_Open() s'il est question d'Excel v.X ou 2004 (mais plus avec Excel 2008). Pas forcément évident pour autant.

On peut bien sûr imaginer que la macro aille chercher les liens dans les feuilles, relève le chemin effectif du classeur (en espérant qu'il ait été enregistré), en déduise le chemin du classeur cible (en espérant qu'il ait bien été placé à l'emplacement relatif souhaité) et coller ce chemin à la place du chemin initial.

Mais cela laisse tout de même envisager beaucoup de risques d'erreur. Il serait probablement préférable de voir si tu ne peux pas intégrer toutes les feuilles dans un seul classeur avant envoi. Quelles sont exactement tes contraintes ?
 
en déduise le chemin du classeur cible

et avec quelle intelligence artificielle ?

j'ai un lien vers TOTO.xls dans Documents/toto , toto.xls qui est devenu TATA007.xls dans Documents/tata/toto314 :siffle:

ou alors j'ai rien compris à la question, ce qui est possible aussi :eek:
 
Pour autant que je me souvienne, les liens d'Excel sont relatifs, pas absolus, mais relatifs à partir de la position du classeur, c'est à dire que pour que la relativité fonctionne, il faut que les fichiers liés soient dans un sous dossier de celui qui contient le classeur !

Exemple :

Position d'origine :

Classeur : ~/Documents/Doc_Excel/mon_classeur.xls
Documents liés : ~/Documents/Doc_Excel/Documents_liés/xxxxxxx.yyy

Transfert sur un CD :

Classeur : Mon_CD/mon_classeur.xls
Documents liés : Mon_CD/Documents_liés/xxxxxxx.yyy

ça fonctionne, car le chemin mémorisé par Excel part de la position du classeur.
 
Très juste. Je me rends compte que j'avais (encore une fois) lu trop vite le message initial. Dans la mesure où les classeurs concernés sont dans un même dossier, il ne devrait pas y avoir de souci, en effet.


et pan sur les oreilles d'âne ;)