Excel: utilisation fonction indirect

Bonjour,

J'ai un fichier Excel avec plusieurs onglets (produit1, produit2, .....), et un onglet bilan. Voici la formule que j'ai dans l'onglet bilan:

RECHERCHEH($A61;Produit1!$X$18:$GS$21;4;0)-$P61

Il s'agit d'une formule pour comparer le prix d'une accessoire du produit 1 à son prix dans une liste dans l'onglet bilan (d'où le P61).

Je veux mettre l'onglet et la table (partie en gras de la formule) en variable. J'ai réussi à mettre l'onglet en variable avec la fonction INDIRECT:

RECHERCHEH($A61;INDIRECT("'"&$BD61&"'!$X$18:$GS$21");4;0)-$P61
où BD61 est une cellule où il y a écrit: Produit1. J'essaie de faire la même chose pour la table $X$18:$GS$21 , en imbriquant des INDIRECT(...) pour aller chercher les caractères $X$18 et $GS$21 dans deux autres cellules (pour les rendre variables) mais je n'y arrive pas. Aidez-moi svp.

Merci d'avance.

4 réponses

  1. Merci eriiiic ça marche très bien ^^

    Voici ma formule finale:

    =RECHERCHEH($A61;INDIRECT("'"&$BD61&"'!"&BG61&":"&BH61);INDIRECT("BI61");0)-$P61
    où:

    BD61 = nom de l'onglet
    BG61 = $Y$18
    BH61 = $IV$21
    BI61 = 4

    Maintenant je peux jouer sur ces paramètres comme je veux.

    Merci encore!
    Maintenant
    0
    1. Contributeur
      Bonjour,

      Sans tester et en suposant que ta formule de départ soit bonne :
      RECHERCHEH($A61;INDIRECT("'"&$BD61&"'!" & A61 & ":" & B61);4;0)-$P61

      eric
      0
      1. jejelefou,

        Merci pour ta réponse, mais je crois que je me suis mal exprimé. je ne veux pas mettre la table $X$18:$GS$21 dans ma formule, je veux que ce soit dynamique, c'est à dire que pour chaque onglet la fonction rechercheh aille chercher A61 dans une table différente.

        j'espère que c'est clair maintenant.
        0
        1. Non, ce n'est pas clair pour moi.

          qu'y a t il dans A61, une zone, une valeur à chercher??
          0
      2. Bonjour,

        essaie cette formule :

        RECHERCHEH($A61;INDIRECT(C3&"!$X$18:$GS$21");4;0)-$P61

        a+

        jéjé
        0