[Excel 2003] Références à plusieurs feuilles

joker_13 -  
Vaucluse Messages postés 27336 Date d'inscription   Statut Contributeur Dernière intervention   -
Bonjour,

Je cherche à faire une référence "dynamique" mais dans un seul classeur excel.

Imaginons que sur feuille 1, j ai une référence qui fait appel à feuille 2.

Evidemment si je renomme feuille 2, la formule sur feuille 1 ne marche plus.

Est-il possible d'insérer quelque chose dans la formule de feuille pour prendre en compte le changement de nom de feuille 2?

J'ai bien essayà avec INDIRECT mais je n'y suis pas parvenu.

Merci pour votre aide

1 réponse

Vaucluse Messages postés 27336 Date d'inscription   Statut Contributeur Dernière intervention   6 447
 
Bonjour
Curieux.....
en principe si vous changer le nom de la feuille, il change automatiquement dans les formules, sauf justement si vous utilisez INDIRECT qui est un texte?
Crdlmnt
0
joker_13
 
Désolé, je me suis mal exprimé... ma situation est plus compliquée:

En fait sur feuille 2 se trouve également une référence a feuille 1.

Imaginons maintenant que l'on crée une feuille 3, identique a feuille 1, sauf par son nom, puisque la feuille 2, ne calcule pas "feuille 3" mais uniquement feuille 1, et vice versa si on change la formule dans feuille 2.

Ca devient complexe, je l'admet, ma première explication étant bien trop réductrice!

Merci quoi qu'il en soit
0
Vaucluse Messages postés 27336 Date d'inscription   Statut Contributeur Dernière intervention   6 447
 
Alors effectivement il faut utliser INDIRECT, mais difficle de vous conseiller tant que l'on ne connait pas les formules que vous utilisez:
pour info à tout hasard et à adapter
créer en colonne A la liste des feuilles =dont vous disposez (ou disposerez)
pour alléger les codes indirect, vous pouvez placer ces noms de manière conforme au libellé d'une formule, c'est à dire suivi de un point d'exclamation, et encadré des apostrophes si les noms comportent un blanc
ensuite, pour placer en B une égalité avec X1 de la feuille concernées, vous placez la formule:
=INDIRECT(A1&"X1")
et vous tirez sur la hauteur de la liste des noms
Note:
1°) pour éviter un affichage #REF si le nom de la feuille n'est pas encore existant:
=SI(ESTERREUR(INDIRECT(A1&"A1")=1);"";INDIRECT(A1&X1")) le premier code peut rester en l'état quelque soit la formule ensuite, ,il ne fait que détecter l'existence de la feuille.
2°° si vous ne placez pas les signes de nom de feuille dans la liste en A , le code INDIRECT devient:
INDIRECT(A1&"!X1) si le nom n'a pas de blanc
INDIRECT("'"&A1&"'!A1") s'il en a .

si difficultés, revenez soit avec des infos sur vos formules, soit avec un fichier exemple déposé sur:
http:www.cijoint.fr
en plaçant ici le lien donné par le site.

Bonne chance
crdlmnt
0