Liaisons entre fichiers excel

crazydjuju -  
eriiic Messages postés 25847 Date d'inscription   Statut Contributeur Dernière intervention   -
Bonjour,

J'ai un fichier excel qui reprend les données d'un autre fichier excel. Le fichier source est différent chaque année et j'aimerai conserver les liaisons en le pointant sur le nouveau fichier source. Comment puis-je faire?
Merci pour votre aide.

A voir également:

4 réponses

michel_m Messages postés 18903 Date d'inscription   Statut Contributeur Dernière intervention   3 318
 
Bonjour

le nom du fichier source en A1

=INDIRECT("'["&A1&"]Feuil1'!$B$2")
0
crazydjuju
 
Merci pour votre réponse si rapide. Mais je ne suis pas très douée en excel et j'aimerai savoir s'il faut que je tape la formule dans la cellule A1. Et comment je vais pouvoir lier ça à toutes les autres cellules avec liaisons?
Encore merci.
0
michel_m Messages postés 18903 Date d'inscription   Statut Contributeur Dernière intervention   3 318
 
bonjour,
et j'aimerai savoir s'il faut que je tape la formule dans la cellule A1

Non car dans A1 il y a le nom complet du fichier (chemin+titre); la formule est placée (cible) où tu veux la donnée source

Et comment je vais pouvoir lier ça à toutes les autres cellules avec liaisons?

il faut réécrire la formule avec l'adresse de la cellule source (les dollars ne sont pas obligatoires)
0
crazydjuju
 
Merci beaucoup!
0
eriiic Messages postés 25847 Date d'inscription   Statut Contributeur Dernière intervention   7 282
 
Bonsoir tout le monde,

Je tenterai autre chose...
- les 3 fichiers sont fermés
- renommer l'ancienne source en .old
- renommer la nouvelle source du nom de l'ancienne (nouvelle source dans le même répertoire que l'ancienne)
- ouvrir les 2 fichier (celui avec lien et la source)
- 'enregistrer sous...' de la source en lui redonnant son nom d'origine , tous les liens devraient être mis à jour.

Teste sur une copie des fichiers dans un répertoire à part (mais ensuite il faut refaire sur les vrais fichiers, tu ne peux pas déplacer un fichier avec liens)

eric

edit: autre façon plus simple (sur excel 2003) : menu 'edition / liaisons...' sélectionner la source puis 'modifier la source...'
0
crazydjuju
 
Bonjour,

A michel_m: lorsque j'insère votre formule dans la cellule, il me met #REF!. Je ne sais pas d'où vient l'erreur. La cellule source étant FICHIER'!D97 et j'ai tapé le chemin et le nom du fichier en A1.

A eriic: je ne peux pas modifier le nom de fichier d ela nouvelle source. De plus, j'avais déjà essayé de modifier avec 'modifier la source' mais il ne reconnait plus les liaisons.

Merci beaucoup.
0
crazydjuju
 
Bonjour,

A michel_m: lorsque j'insère votre formule dans la cellule, il me met #REF!. Je ne sais pas d'où vient l'erreur. La cellule source étant FICHIER'!D97 et j'ai tapé le chemin et le nom du fichier en A1.

A eriic: je ne peux pas modifier le nom de fichier d ela nouvelle source. De plus, j'avais déjà essayé de modifier avec 'modifier la source' mais il ne reconnait plus les liaisons.

Merci beaucoup.
0
eriiic Messages postés 25847 Date d'inscription   Statut Contributeur Dernière intervention   7 282
 
Bonjour,

indirect() oblige que le classeur source soit ouvert.
Est-ce le cas ?

eric
0
crazydjuju
 
C'est le cas mais je ne suis pas sur de ce que je dois mettre exactement dans la cellule A1.
0
eriiic Messages postés 25847 Date d'inscription   Statut Contributeur Dernière intervention   7 282
 
ta formule d'origine (classeur source fermé) ressemble à ça :
='D:\tmp\[Classeur1.xls]Feuil1'!$B$2
Tu vas remplacer une partie de la chaine par ce qu'il y a en A1.
Met dans A1 cette partie exacte à remplacer, avec tous les caractères cad :
D:\tmp\[Classeur3.xls]
sans la ' du début puisqu'elle est incluse dans la formule de michel.

Ton pb vient sûrement que michel n'avais pas prévu le chemin du fichier.
Modifie un peu sa formule :
=INDIRECT("'"&A1&"Feuil1'!$B$2")


eric
0
crazydjuju
 
Merci beaucoup! Ca marche parfaitement!
0
eriiic Messages postés 25847 Date d'inscription   Statut Contributeur Dernière intervention   7 282
 
der rien, n'oublie pas de mettre en résolu...
0