Texte variable dans une cellule Excel

Résolu/Fermé
logan989 Messages postés 38 Date d'inscription mercredi 7 avril 2010 Statut Membre Dernière intervention 12 juin 2013 - 7 avril 2010 à 16:45
logan989 Messages postés 38 Date d'inscription mercredi 7 avril 2010 Statut Membre Dernière intervention 12 juin 2013 - 8 avril 2010 à 08:36
Bonjour,

Je suis utilisateur novice d'Excel 2003 dans le cadre de mon stage en entreprise et me voici devant un problème de taille que j'ai vais tâcher d'expliquer de façon compréhensible.
Dans une feuille quelconque, je dois faire appel au texte d'une cellule d'un autre fichier.
Pas compliqué me direz-vous mais voici le problème : le fichier doit être paramétrable.
Effectivement dans ma formule type ='[nom_de_fichier.xls]Feuil1'!$F$73 , la partie que je dois paramétrer est la partie "nom_de_fichier" de façon à ce que le texte soit celui d'une cellule de ma page et qu'on fasse ainsi appel à un fichier différent chaque fois qu'on modifie cette dernière.

J'espère avoir été clair et vous remercie par avance de votre aide bien aimable.


A voir également:

4 réponses

Vaucluse Messages postés 26496 Date d'inscription lundi 23 juillet 2007 Statut Contributeur Dernière intervention 1 avril 2022 6 394
Modifié par Vaucluse le 7/04/2010 à 17:59
Bonjour

Si la feuille dans chacun des fichiers a toujours le même nom,(feuil1 par exempl) vous pouvez aller directement de A1 nom du fichier en A2 valeur de la cellule A10 du fichier avec:
=INDIRECT("[A1&"]feuil1!A10")

si la feuille n'a pas le même nom dans tous les fichiers:
en A1 nom de fichier
en A2 nom de la feuille
en A3:
=INDIRECT("["&A1&"]"&A2&"!A10")
en fait le code écrit dans une cellule sans INDIRECT doit reproduire exactement en texte la définition de l'adresse a inclure dans la formule, INDIRECT la transforme en adresse:
="["&A1&"]"&A2&"!A10")
Donc si vous avez un tableau avec la liste des noms de fichiers, vous pouvez descendre cette formule et vous aurez chaque résultat en ligne.Ou aors créer un menu déroulant à partir de cette liste Ca marche aussi dans le même fichier avec le nom des feuilles.

Crdlmnt

Demandons nous si nous ne sommes pas seuls à comprendre ce que l'on explique?
1
Raymond PENTIER Messages postés 58388 Date d'inscription lundi 13 août 2007 Statut Contributeur Dernière intervention 17 avril 2024 17 088
8 avril 2010 à 02:51
Bien, Vaucluse !
Mes amitiés.
0
logan989 Messages postés 38 Date d'inscription mercredi 7 avril 2010 Statut Membre Dernière intervention 12 juin 2013
8 avril 2010 à 08:36
Merci Vaucluse pour cette solution !
Merci à tous pour votre participation.
Bonne journée
0
identifiant-comment Messages postés 341 Date d'inscription lundi 20 avril 2009 Statut Membre Dernière intervention 6 mars 2017 54
7 avril 2010 à 16:58
Bonjour,

Et pourquoi ne pas proposer dans la feuille une liste des fichiers possibles, en regard desquels les utilisateurs peuvent mettre une croix.

Tu t'en sortirais ensuite avec une formule SI ?
0
logan989 Messages postés 38 Date d'inscription mercredi 7 avril 2010 Statut Membre Dernière intervention 12 juin 2013
7 avril 2010 à 17:24
Merci de ta réponse et de ta rapidité.

J'ai aussi pensé à une liste déroulante mais le problème reste entier : avec une coche dans la case appropriée si on prend ta solution, comment faire le lien à l'autre fichier ?
On aurait : Si (coche_dans_fichier_1 ; ?? ; Si (coche_dans_fichier_2 ; ?? ; Si (coche_dans_le_fichier_3 ; ?? ; ...)))
Des limites apparaissent toutefois puisqu'on ne peut pas imbriquer plus de 8 fonctions "SI"

Mais peut-être que je m'y prends mal, votre aide et vos conseils sont les bienvenus !
0
identifiant-comment Messages postés 341 Date d'inscription lundi 20 avril 2009 Statut Membre Dernière intervention 6 mars 2017 54
Modifié par identifiant-comment le 7/04/2010 à 17:31
Re,

Un point pour toi pour les huit fonctions SI : depuis que je suis passée à Excel 2007, c'est un souci que j'ai oublié ;)

Je pensais plutôt à une liste des fichiers possibles en colonne B, des "coches" en colonne A et une formule qui ressemblerait peu ou prou à ceci :

=SI(NON(ESTVIDE($A$1));'[nom_de_fichier-saisi-en-B1.xls]Feuil1'!$F$73;SI(NON(ESTVIDE($A$2));'[nom_de_fichier-saisi-en-B2.xls]Feuil1'!$F$73;""))

ou quelque chose d'approchant.
Je concède que :
1. C'est pas très souple
2. C'est une usine à gaz
3. Si tu ne peux pas imbriquer les SI indéfiniment et que tu as, comme par hasard, neuf fichiers cibles, tu es coincé.

Mais effectivement, je suis pour l'instant confrontée au même problème que toi. Si je saisis dans une cellule du fichier (ici B22) dans lequel je veux mettre ma formule le nom du fichier cible, et que je l'appelle ensuite avec la formule suivante :

=CONCATENER("=[";B2;"]Feuil1'!$F$73")

Tout ce que j'arrive à faire, c'est à faire apparaître en toutes lettres le chemin que je voudrais faire fonctionner...
0
Vaucluse Messages postés 26496 Date d'inscription lundi 23 juillet 2007 Statut Contributeur Dernière intervention 1 avril 2022 6 394
Modifié par Vaucluse le 8/04/2010 à 06:12
Bonjour identifiant

edit
Tout ce que j'arrive à faire, c'est à faire apparaître en toutes lettres le chemin que je voudrais faire fonctionner...

c'est l'essentiel... le reste c'est trois messages au dessus,avec la fonction indirect
ici donc
https://forums.commentcamarche.net/forum/affich-17286988-texte-variable-dans-une-cellule-excel#4
bonne journée
0
identifiant-comment Messages postés 341 Date d'inscription lundi 20 avril 2009 Statut Membre Dernière intervention 6 mars 2017 54
8 avril 2010 à 07:04
Merci !
0
Vaucluse Messages postés 26496 Date d'inscription lundi 23 juillet 2007 Statut Contributeur Dernière intervention 1 avril 2022 6 394
Modifié par Vaucluse le 8/04/2010 à 07:33
pas de quoi, identifiant.
En appartée, sur excel avant 2007 ce n'est pas 8 conditions SI, mais 7. Le 8° choix peut être obtenu en valeur finale, mais la formule n(accepte que 7 SI.
Crdlmnt
bonne journée
0