Référence à une feuille depuis une cellule
RésoluLe Pingou Messages postés 12273 Date d'inscription Statut Contributeur Dernière intervention -
Bonjour le forum !
Je souhaite récupérer le contenu d'une cellule située sur une autre feuille.
Jusque là, ça va.
Mais le nom de cette feuille doit être pris dans une cellule de la feuille courante, et ça je n'y arrive pas.
J'ai essayé
="'"&C7&"'!A1"
Mais ça me renvoie du texte, et pas ma valeur.
Puis-je vous demander de l'aide pour corriger ma syntaxe ?
https://www.cjoint.com/c/MDbicC30FOv
Merci par avance
Windows / Firefox 111.0
11 réponses
-
Bonjour
A tester
=INDIRECT(C7&"!A1") -
Re-,
Regarde sur le site du regretté JBoisgontier les conditions d'utilisation de la fonction INDIRECT (notamment pour les noms d'onglet spéciaux...)
http://boisgontierj.free.fr/pages_site/indirect.htm
Bonne lecture
-
Bonjour Yclik (c'est marrant comme pseudo, ça :) )
Ça fonctionne, merci beaucoup !
Bonne journée
-
Hummm j'ai d'autres soucis ...
En effet, sur l'exemple, ça fonctionne, mais appliqué à une formule INDEX/EQUIV, il n'en veut pas ...
En gros ça donne :
=INDEX(INDIRECT(C7&"!$T$2:$T$1000");EQUIV(1;(INDIRECT(C7&"!$H$2:$H$1000")=$D$2)*(INDIRECT(C7&"!$L$2:$L$1000")=$D$3)*(INDIRECT(C7&"!$F$2:$F$1000")=$D$4);0);1)Mais il me rend "#REF!" le vilain ... alors que lorsque je fais référence directement à la feuille, j'ai mon résultat.
Existe-t-il une autre manière d'exprimer la référence à une feuille via le contenu d'une cellule ?
Merci ! -
Vous n’avez pas trouvé la réponse que vous recherchez ?
Posez votre question -
re EQUIV(1;(INDIRECT(C7&"!$H$2:$H$1000")=$D$2me semble erroné1 serait le critère de rechercheINDIRECT(C7&"!$H$2:$H$1000" la plage de recherchealors pourquoi =$D$2 -
Bonjour,
Est-ce que les noms des onglets comportent des espaces, caractères spéciaux ou apostrophes?
-
$D$2 représente la valeur recherchée dans la plage $H$2:$H$1000
C'est une recherche multicritères.
Par ailleurs, lorsque je saisis :
=INDEX('Peugeot'!$T$2:$T$1000;EQUIV(1;('Peugeot'!$H$2:$H$1000=$D$2)*('Peugeot'!$L$2:$L$1000=$D$3)*('Peugeot'!$F$2:$F$1000=$D$4);0);1)... j'obtiens le bon résultat.
Bonjour CousinHub.
Est-ce que les noms des onglets comportent des espaces, caractères spéciaux ou apostrophes? Oui, des espaces, en effet ...
J'ai juste besoin de remplacer le 'Peugeot'! par le contenu de la cellule C7, pour l'appliquer à de très nombreux calculs.
Merci !:
-
Bonjour touroul,
Avec quelques données qui correspondent pour voir le résultat de votre formule se serait plus profitable ...!
-
Bonjour Le Pingou
Je dois m'absenter, je reprends ça ce soir avec un fichier d'exemple.
A plus tard.
-
Eurêka !
En effet, c'est feu Jacques Boisgontier qui, une fois de plus, en aura aidé un.Voici la bonne syntaxe :
=INDEX(INDIRECT("'"&$C7&"'!$T$2:$T$1000");EQUIV(1;(INDIRECT("'"&$C7&"'!$H$2:$H$1000")=Peugeot!$D$2)*(INDIRECT("'"&$C7&"'!$L$2:$L$1000")=Peugeot!$D$3)*(INDIRECT("'"&$C7&"'!$F$2:$F$1000")=Peugeot!$D$4);0);1)Merci de vous y être penchés et bonne soirée -
Bonjour,
Merci du retour.
Petite remarque, il y a toujours le nom de la feuille concernée dans la formule ....(Peugeot) alors que vous vouliez utiliser le critère d'une cellule...!