Formule IF / SI

Résolu/Fermé
Olivier Tétrault - 11 déc. 2016 à 21:58
 Olivier Tétrault - 12 déc. 2016 à 13:55
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

Utilisateur anonyme
11 déc. 2016 à 23:16
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
Utilisateur anonyme
12 déc. 2016 à 12:08
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
Olivier Tétrault
11 déc. 2016 à 23:58
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
Raymond PENTIER Messages postés 58396 Date d'inscription lundi 13 août 2007 Statut Contributeur Dernière intervention 25 avril 2024 17 094
Modifié par Raymond PENTIER le 12/12/2016 à 01:35
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
Olivier Tétrault
12 déc. 2016 à 01:43
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
Raymond PENTIER Messages postés 58396 Date d'inscription lundi 13 août 2007 Statut Contributeur Dernière intervention 25 avril 2024 17 094 > Olivier Tétrault
Modifié par Raymond PENTIER le 12/12/2016 à 01:48
De quelle formule parles-tu ? Il y en a une de toi, deux d'albkan et deux de moi ...
0
Vaucluse Messages postés 26496 Date d'inscription lundi 23 juillet 2007 Statut Contributeur Dernière intervention 1 avril 2022 6 396
Modifié par Vaucluse le 12/12/2016 à 08:54
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
Utilisateur anonyme > Vaucluse Messages postés 26496 Date d'inscription lundi 23 juillet 2007 Statut Contributeur Dernière intervention 1 avril 2022
12 déc. 2016 à 12:37
 
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