Adapter une formule en fonction du nom d'un fichier

Hello le forum,

Est - il possible d'adapter une formule en fonction d'un nom de fichier qui varie et ça sans VBA ?

Je m'explique dans mon fichier joint, je vais récupérer des données dans un autre classeur, mais le nom de ce classeur peux changer.

Du coup mes données ne se mettent pas à jour.

Y - a - t- il un moyen sans VBA que ma formule s'adapte en fonction du nom de classeur ?

Dans mon fichier exemple, mes formules pointent vers CD1+CDR2.xlsx mais je veux que maintenant elles s'adaptent à CDR3+CDR4 j'ai le chemin en B1 et B2. En gros je veux juste changer mes chemin en B1 et B2 et les formules s'adaptent.

Merci à vous.

11mr.xlsx (11.18 Ko)

Bonsoir,

juste une piste :

mets le nom de fichier dans une cellule, puis tu utilises cette cellule dans une formule avec la fonction INDIRECT()

dhany

Bonjour Rag02700,

Voyez si le fichier joint répond à vos attentes

32rag02700-mr.xlsx (5.75 Ko)

Bonsoir

On peut en formule avoir le nom du fichier Excel :

=CELLULE("filename")

Cela te donne le fichier + l'arborescence.

Si tu adaptes en A1 la fonction : =CELLULE("filename")

Tu peux avoir le nom du fichier avec l extension de cette façon avec la cellule A1 afin de ne pas compliquer la formule :

=STXT(A1;TROUVE("[";A1;1)+1;TROUVE("]";A1;1)-TROUVE("[";A1;1)-1)

Cela te donne par exemple : Classeur1.xlsx

Libre à toi de mettre cette fonction en A2 et tu pourras l'adapter librement dans toutes tes feuilles en faisant le test de cohérence si A2 = Nom de fichier ou different

Cdt,

Merci à vous tous pour vos réponses,

@ njhub comment je vais récupérer dans mes fichiers les données du coup ?

J'ai juste à modifier le nom de mon fichier dans les cellules B1 et B2 ?

Il y a peut être un truc qui m’échappe

Thanks

Bonjour Rag02700,

Oui, c'est ça, si tout fonctionne comme prévu,

il n'y a que les adresses de fichiers à changer en B1 et B2,

en J1 le nom de l'onglet si besoin

=INDIRECT($B$1&ADRESSE(LIGNE()-3;COLONNE();4;1;$J$1);1)+INDIRECT($B$2&ADRESSE(LIGNE()-3;3;4;1;$J$1);1)

Je crois qu'il manque la cellule de l'onglet KPI non ?

Bonjour Rag02700,

Oui, essayez avec :

=INDIRECT($B$1&ADRESSE(LIGNE()-3;COLONNE();4;1;$J$1);1)+INDIRECT($B$2&ADRESSE(LIGNE()-3;COLONNE();4;1;$J$1);1)

KPI est déterminé par le contenu de $J$1 dans:

ADRESSE(LIGNE()-3;COLONNE();4;1;$J$1)

Marche pas

J'ai modifié le nom de mes fichiers, mais il j'ai toujours le #REF :(

bonjour

si c'est "le nom de ce classeur peux changer."

avec Power Query (tu devras le télécharger gratuitement)

https://www.youtube.com/watch?v=gwW2CDdvUUs

ensuite menu Power Query, Obtenir de classeur

il récupère tous les fichiers contenus dans un répertoire donné (mets TOUS tes fichiers d'origine dans un répertoire unique)

"charger"

dans ton nouvel onglet, il y a tout !

en colonne 1 il y a le nom des fichiers

à toi de faire une formule pour récupérer les données voulues, en général par un

RECHERCHEV(B1 ; plageobtenueparPowerQuery ; n°decolonne ; 0)

pas de VBA

bon travail

Rechercher des sujets similaires à "adapter formule fonction nom fichier"