Formule IF / SI

Résolu
Olivier Tétrault -  
 Olivier Tétrault -
Bonjour j'aimerais ajouter un "IF" à cette formule =((C261-B261)/P261*Q188) pour que "SI" le résultat est inférieur à 0 le résultats doit être 0

2 réponses

  1. Utilisateur anonyme
     
    Bonjour Olivier,

    Ta formule utilise ces 4 cellules : C261, B261, P261, et Q188 ;
    si ces 4 cellules contiennent toujours des nombres positifs,
    l'expression entière ne peut être négative que si B261 > C261.

    Donc la formule peut alors être simplement :
    =SI(B261>C261;0;(C261-B261)/P261*Q188)

    Note que si Q188=0 ça donnera 0 aussi ; et si P261=0 :
    erreur de division par zéro ! => autre formule :

    =SI(B261>C261;0;SI(P261=0;"";(C261-B261)/P261*Q188)

    Si ton problème est réglé, merci de l'indiquer,
    pour que le sujet puisse être passé en résolu.

    Cordialement.  :)
     
    0
    1. Utilisateur anonyme
       
      Pour ma 2ème formule, comme l'a remarqué Vaucluse dans son message #6,
      j'ai effectivement oublié une parenthèse fermante ; voici la formule corrigée :
      =SI(B261>C261;0;SI(P261=0;"";(C261-B261)/P261*Q188))
      0
  2. Olivier Tétrault
     
    Merci beaucoup pour cette réponse, mais cela ne fonctionne pas.

    Je crois que je me suis mal expliqué ou bien il manque une parenthèse ou quelque chose.

    Ma formule est la suivante:

    =((C263-B263)/$P$263*$Q$205)

    Je veux simplement remplacer toute valeurs négative possible par la valeur 0 et conserver les autres résultats intact.

    En d'autre terme je veux pas que ce soit possible pour ma formule de présenter un résultat négatif, la valeur la plus basse possible doit être 0
    0
    1. Raymond PENTIER Messages postés 58211 Date d'inscription   Statut Contributeur Dernière intervention   17 480
       
      C'est exactement ce que font les formules de albkan !
      J'ai l'impression que tu n'as même pris la peine de les tester ...

      Mais, si ça peut te rassurer, tu peux aussi utiliser celle-ci :
      =SI(C261-B261)/P261*Q188<0;0;(C261-B261)/P261*Q188)
      ou encore celle-là :
      =MAX((C261-B261)/P261*Q188;0)
      0
    2. Olivier Tétrault
       
      Je reçois le message d'erreur suivant : Il semble qu'il manque une ou plusieurs parenthèses ouvrantes dans votre formule. Si vous ne voulez pas entrer une formule, commencez votre texte par une apostrophe (').
      0
    3. Raymond PENTIER Messages postés 58211 Date d'inscription   Statut Contributeur Dernière intervention   17 480 > Olivier Tétrault
       
      De quelle formule parles-tu ? Il y en a une de toi, deux d'albkan et deux de moi ...
      0
    4. Vaucluse Messages postés 27336 Date d'inscription   Statut Contributeur Dernière intervention   6 453
       
      Bonjour
      Pas de jaloux!
      2° formule d'Albkan, manque une parenthèse à la fin (3 ouvrantes, deux fermantes)
      de même qu'elle devrait (pour rester dans la même logique) être complétée du risque si Q188=0 soit donc la 2° condition:
      au lieu de .....SI(P261=0... écrire .....SI(P261*Q188=0...
      1° formule de Raymond Pentier, manque une parenthèse derrière le SI
      (deux ouvrantes pour trois fermantes)

      la plus simple étant la 1° avec MAX, mais pour éliminer l'éventuel #DIV/0

      =SI(P261*Q188=0;"";MAX((C261-B261)/P261*Q188;0))


      crdlmnt
      0
    5. Utilisateur anonyme > Vaucluse Messages postés 27336 Date d'inscription   Statut Contributeur Dernière intervention  
       
       
      Bonjour Vaucluse,

      Tu as raison pour ma 2ème formule : j'ai oublié une 3ème parenthèse fermante.
      Je viens d'ajouter mon message #7 : ainsi, la formule corrigée apparaît juste en
      dessous de ma 2ème formule erronée.

      Par contre, il faudrait tester si Q188=0 si c'était : (C261-B261)/(P261*Q188) ;
      mais comme il n'y a pas de parenthèses pour P261*Q188, alors selon les
      priorités implicites, ça revient à : ((C261-B261)/P261)*Q188

      Donc comme le diviseur est seulement P261 et pas (P261*Q188), le test
      Q188=0 est inutile ; ta formule peut donc être simplifiée ainsi :
      =SI(P261=0;"";MAX((C261-B261)/P261*Q188;0))

      Cordialement.  :)
       
      0