XL 2010 Référence externe avec chemin d’accès dans une cellule

stevbrun

XLDnaute Nouveau
Bonjour,

J'ai besoin d'utiliser plusieurs valeurs de fichiers .xlsx fichiers dans un fichier "total.xlsx"

Par exemple je dois récupérer la valeur de la cellule A1 dans la Feuil1 du fichier 05.07.xlsx se trouvant dans D:\DATA

La formule qui fonctionne est:
='D:\DATA\[05.07.xlsx]Feuil1'!A1

Je vais avoir besoin d'utiliser ce type de formule un grand nombre de fois dans mon fichier.

Je voudrais pouvoir modifier cette formule pour éviter trop de modifications à faire si les emplacements ainsi que les nom de fichiers changent.

J'ai dans "total.xlsx":

B1 contient D:\DATA
B2 contient 05.07.xlsx

Je voudrais avoir en B3 le même résultat que ='D:\DATA\[05.07.xlsx]Feuil1'!A1 en utilisant B1 et B2.

Merci d'avance
 

Lolote83

XLDnaute Barbatruc
Salut,
Sans fichier joint, difficile de faire un test, mais a priori, il faudrait voir du coté de la fonction INDIRECT.
Sans conviction, cela pourrait donner
=indirect(B1 & "\[" & B2 & "]Feuil1!A1")
A adapter si erreur de syntaxe mais c'est dans l'esprit
@+ Lolote83
 

stevbrun

XLDnaute Nouveau
Salut,
Sans fichier joint, difficile de faire un test, mais a priori, il faudrait voir du coté de la fonction INDIRECT.
Sans conviction, cela pourrait donner
=indirect(B1 & "\[" & B2 & "]Feuil1!A1")
A adapter si erreur de syntaxe mais c'est dans l'esprit
@+ Lolote83

Ça ne fonctionne pas.
excel met #REF!
Je joins les fichiers pour ceux qui veulent faire des tests
 

Pièces jointes

  • total.xlsx
    10.6 KB · Affichages: 30
  • 05.07.xlsx
    8.3 KB · Affichages: 26

stevbrun

XLDnaute Nouveau
Re salut,
Je viens de faire une simulation avec 2 de mes fichiers et j'ai aussi un #REF!
Donc désolé d'avoir répondu si vite, je cherche !!!!
En regardant sur ce site, tu devrais trouver pointure à ton pied.
http://boisgontierjacques.free.fr/pages_site/indirect.htm
@+ Lolote83

Merci pour ton lien, ça m'apporte de l'eau à mon moulin.
Je vais m'en servir pour mon projet et essayer de l'arranger au mieux pour simplifier mes formules et diminuer le nombre de fichiers Excel liés
 

Paf

XLDnaute Barbatruc
Bonjour stevbrun, Lolote83,

Parti sur l'autre discussion, j'ai réussi, si les classeurs sont dans le même répertoire, avec une macro et une fonction:

Code:
Sub LanceCherch()
  Range("A3") = Cherch(Cherch("repertoire.xls", "R2C1"), "R1C1") ' réf cellule type R1C1 obligatoire
End Sub

dans un module standard :
Code:
Function Cherch(Classeur, Cellule)
  chemin = ActiveWorkbook.Path & "\"
  Cherch = ExecuteExcel4Macro("'" & chemin & "[" & Classeur & "]Feuil1'!" & Cellule)
End Function

Pas très pratique à utiliser, mais malheureusement, impossible d'adapter cette fonction en fonction personnalisée où ExecuteExcel4Macro n'est pas apprécié!!
Impossible d'utiliser Evaluate (à la place de ExecuteExcel4Macro) qui fonctionne dans une fonction personnalisée, mais seulement pour des fichiers ouverts ...

A+


 

Discussions similaires

Statistiques des forums

Discussions
312 488
Messages
2 088 840
Membres
103 972
dernier inscrit
steeter