Référence à une feuille depuis une cellule

Résolu

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

  1. Bonjour Yclik (c'est marrant comme pseudo, ça :) )

    Ça fonctionne, merci beaucoup !

    Bonne journée

    1. 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 !

      1. re
        
        EQUIV(1;(INDIRECT(C7&"!$H$2:$H$1000")=$D$2
         me semble erroné

        1 serait le critère de recherche

        INDIRECT(C7&"!$H$2:$H$1000" la plage de recherche

        alors pourquoi =$D$2

        1. Bonjour,

          Est-ce que les noms des onglets comportent des espaces, caractères spéciaux ou apostrophes?


          1. $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 !:

            1. Bonjour touroul,

              Avec quelques données qui correspondent pour voir le résultat de votre formule se serait plus profitable ...!


              1. Bonjour Le Pingou

                Je dois m'absenter, je reprends ça ce soir avec un fichier d'exemple.

                A plus tard.

                1. 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
                  
                  1. 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...!