Ceci est une page optimisée pour les mobiles. Cliquez sur ce texte pour afficher la vraie page.

XL 2016 changer un nom de fichier en fonction de la valeur d'une cellule

Scrat1964

XLDnaute Nouveau
Bonjour à tous

Après qques recherches infructueuses sur le net, je me retourne vers vous,

Dans un fichier "demandes clients", je fais une RechercheH d'une valeur qui se trouve dans un autre fichier .
Jusque là, pas de soucis. Le problème est que le nom de mon fichier change chaque jour en fonction de la date. Alertes ferrage JJMM.xlsx
Existe-t-il une fonction qui me permette de modifier le nom du fichier dans ma formule en fonction de la date du jour.
=SIERREUR(RECHERCHEH($F$3;'C:\Users\trubertx\Documents\documents MA France\ferrage\alerte ferrage\[Alertes ferrage 1309.xlsx]Rupture ferrage'!$A$2:$Z$160;EQUIV($B4;'C:\Users\trubertx\Documents\documents MA France\ferrage\alerte ferrage\[Alertes ferrage 1309.xlsx]Rupture ferrage'!$B:$B;0)-1;FAUX);0)

J'ai vu que ça existait par une macro, mais j'aurai voulu rester dans une formule, si possible.

Je joins le fichier en question. J'espère avoir été assez clair

Merci de votre aide

Bien cordialement

Xavier
 

Pièces jointes

  • Demandes clients-S37.xlsx
    83.6 KB · Affichages: 6
Solution
Bonjour Sylvanu.
Un grand merci.
J'avais déjà testé la fonction indirect, mais sans succès, ma formule n'était pas bonne. Je ne mettais pas le double guillemet et le & sur la cellule ou il y a le chemin et le nom du fichier.
J'ai fait qqes correction sur la votre, mais la base m'a bien aidé, voici le résultat qui fonctionne.
=SIERREUR(RECHERCHEH($F$3;INDIRECT(""&$W$19&""&"$A$2:$Z$160");EQUIV($B4;INDIRECT(""&$W$19&""&"$B:$B");0)-1;FAUX);0)
Le chemin et nom de fichier sont en "W19"
Encore merci.
sincères salutations
Scrat

sylvanu

XLDnaute Barbatruc
Supporter XLD
Bonjour Scatt,
En PJ un essai.
On peut construire un accès via des chaines de caractères et la fonction Indirect.
Pour simplifier les innombrables formules, j'ai créé en D1 le nom du fichier à accéder avec la bonne date, puis dans le tableau j'utilise cette chaine que j'ai nommée Fichier :
VB:
Nom accès fichier :
="'g:\Users\trubertx\Documents\documents MA France\ferrage\alerte ferrage\[Alertes ferrage "&TEXTE(JOUR(B1);"00")&TEXTE(MOIS(B1);"00")&".xlsx]Rupture ferrage'!"
Formule utilisée en F4 :
=SIERREUR(RECHERCHEH($F$3;INDIRECT(Fichier&"$A$2:$Z$160");EQUIV($B4;INDIRECT(Fichier&"$B:$B");0)-1;FAUX);0)
N'ayant pas accès à votre fichier je ne peux pas le tester. Je n'ai modifié que la cellule F4 pour exemple.
A tester sans garantie .
 

Pièces jointes

  • Demandes clients-S37.xlsx
    86.6 KB · Affichages: 2

Scrat1964

XLDnaute Nouveau
Bonjour Sylvanu.
Un grand merci.
J'avais déjà testé la fonction indirect, mais sans succès, ma formule n'était pas bonne. Je ne mettais pas le double guillemet et le & sur la cellule ou il y a le chemin et le nom du fichier.
J'ai fait qqes correction sur la votre, mais la base m'a bien aidé, voici le résultat qui fonctionne.
=SIERREUR(RECHERCHEH($F$3;INDIRECT(""&$W$19&""&"$A$2:$Z$160");EQUIV($B4;INDIRECT(""&$W$19&""&"$B:$B");0)-1;FAUX);0)
Le chemin et nom de fichier sont en "W19"
Encore merci.
sincères salutations
Scrat
 

Discussions similaires

Les cookies sont requis pour utiliser ce site. Vous devez les accepter pour continuer à utiliser le site. En savoir plus…