Fonction si

Résolu
Bonjour,

J'ai une fonciton si trop longue et je ne sais pas comment faire, voici l'idée:
Si(b10="Test";c10*g8; " ")
En fait, Si ma cellule b10 correspond à certains noms, dans ma cellule d10, la cellule c10 est multipliée par une autre. Mais la liste de noms est trop longue et je ne sais pas comment faire.

Si quelqu'un peu m'aider?

Merci d'avance!!!!!!!!!!!!!!!!!!!!!!!!!!!!

4 réponses

  1. Contributeur
    Bonjour,
    Il faudrait stocker la liste dans un plage puis utiliser une fonction de recherche, ça donnerait qqchose comme
    =si(estna(RECHERCHE(B10;laliste));" ";C10*G8)

    On entend par une belle solution, la solution simple et facile d'un problème difficile et compliqué
    0
    1. Contributeur
      En fait ce serait plutot =SI(ESTNA(RECHERCHEV(B10;Noms;1;0));" ";C10*G8)
      Si la fonction RECHERCHE ne peut trouver la valeur de l'argument valeur_cherchée, elle utilise la plus grande valeur de la matrice qui est inférieure ou égale à celle de l'argument valeur_cherchée, ce qui n'est pas correct dans ce cas
      0
  2. Contributeur
    Bonjour
    un exemple ici à adapter:
    https://www.cjoint.com/?BKDpGRiSx5X

    Tompol, croyez vous vraiment que votre formule va donner un résultat autre que C10*G8 si la valeur de B10 est dans le champ de recherche?
    c'est un peu au petit bonheur la chance là? non ? et c'st quand même ncore loii du "quelque chose comme"

    crdlmnt
    0
    1. Contributeur
      Bonjour Vaucluse,
      euh, soit je nai pas compris la question, soit je n'ai pas compris votre remarque....
      "croyez vous vraiment que votre formule va donner un résultat autre que C10*G8 si la valeur de B10 est dans le champ de recherche?" => bah non, mais la demande n'était pas exprimée en ce sens à ce que j'en ai compris....
      La formule teste si B10 n'appartient pas à la liste (estna(recherche)), dans ce cas on affiche rien, sinon on mulitplie bien C10 par G8....Votre exemple recherche une valeur (col f) dans la liste (col A) pour renvoyer le coef correspondant (col b) et mulitplier cette valeur par celle en colonne E, ce sont 2 choses très différentes....
      EDIT : autant pour moi, ça ne peut fonctionner avec RECHERCHE.....
      0
  3. Bonjour à tous,

    Merci pour vos réponses! Je vais essayer cela de suite et vous redis.

    Je suis très douée en formule excel...
    0
    1. En fait, dans ma colonne B, il y a une liste déroulante avec des noms de personnes (c'est pour une caisse à tenir). Et selon le nom choisis, il faut que ma cellule D10 fasse le calcul et dans certains cas, il ne doit rien y avoir dans la cellule.
      Voici la formule rentrée à la base:
      =SI(B10="Isabelle H"; C10*$G$8; SI(B10="Anne-Laure"; C10*$G$8; SI(B10="Claire";C10*$G$8; SI(B10="Florence"; C10*$G$8; SI(B10="Isabelle GC"; C10*$G$8; SI(B10="Isabelle M"; C10*$G$8; SI(B10="Rose-Marie";C10*$G$8; SI(B10="Sophie";C10*$G$8; " "))))))))
      Elle fonctionne mais il faut que je rajoute des noms...
      0
      1. Après test de vos formules, je n'y arrive pas mais c'est certainement parce que je n'avais pas expliquer correctement ce que j'essaie de faire... je m'en excuse!
        Mais merci pour les idées! Elles pourront me servir pour autre chose!
        0
      2. Contributeur
        Re,
        Essaie ceci : =SI(ESTNA(RECHERCHEV(B10;Noms;1;0));" ";C10*G8)
        "Noms" correspond à la plage de cellule dans laquelle tu saisis la liste de noms....
        0
      3. Re!
        Merci. La formule fonctionne presque... en fait, lorsque c'est un nom qui n'est pas dans la plage Noms, il faudrait qu'il n'y ait rien et pour l'instant excel fait toujours le calcul.
        0
      4. Contributeur
        Euh, ça fonctionne bien chez moi....Peux-tu stp mettre un fichier exemple ici : https://www.cjoint.com/ et coller le lien ?
        0