Condition SI SAUF SI

Fermé
Laetitia - 16 juin 2023 à 14:39
cousinhub29 Messages postés 936 Date d'inscription mardi 10 août 2010 Statut Membre Dernière intervention 11 septembre 2024 - 16 juin 2023 à 14:57

Bonjour,

Je cherche à créer une formule SI en imbriquant une fonction SAUF SI. Ce sujet a été de nombreuses fois évoqués, cependant je ne parviens pas à comprendre comment l'appliquer à ma formule. 

Au début de ma formule je précise que, selon le poids du produit, je veux retrouver un certain montant. La première par exemple : si le poids est inférieur à 0,5 alors cela vaut 0,03.

Sauf que, je souhaite que cela ne s'applique pas dans le cas où mon produit fait partie de certaines catégories : KITCHEN, CLEANING...

Aujourd'hui la formule que vous voyez dessous n'est pas noté en anomalie par EXCEL. Les fonctions de poids fonctionnent mais celle concernant la catégorie ne fonctionne pas. Je pense qu'il manque quelque chose.


=SI([@[Poids Net du produit  (KG) 
]]<0.5;0.03;SI([@[Poids Net du produit  (KG) 
]]<1;0.1;SI([@[Poids Net du produit  (KG) 
]]<2;0.17;SI([@[Poids Net du produit  (KG) 
]]<5;0.33;SI([@[Poids Net du produit  (KG) 
]]<10;0.83;SI([@[Poids Net du produit  (KG) 
]]<20;1.83;SI([@[Poids Net du produit  (KG) 
]]<30;2.92;SI([@[Poids Net du produit  (KG) 
]]<40;3.92;SI([@[Poids Net du produit  (KG) 
]]<60;5.58;SI([@[Poids Net du produit  (KG) 
]]<100;8.83; ([@[CATEGORIE PRODUIT]]=KITCHEN;0)))))))))))
 

En espérant que mon explication soit assez claire, pourriez-vous m'aider à comprendre mon erreur ?
Windows / Edge 114.0.1823.43

1 réponse

cousinhub29 Messages postés 936 Date d'inscription mardi 10 août 2010 Statut Membre Dernière intervention 11 septembre 2024 339
16 juin 2023 à 14:57

Bonjour,

Peut-être en modifiant la formule, et en utilisant les fonctions Index et Equiv avec leurs matrices :

=SI(OU([@[CATEGORIE PRODUIT]]<>"KITCHEN";[@[CATEGORIE PRODUIT]]<>"CLEANING");INDEX({0.03;0.1;0.17;0.33;0.83;1.83;2.92;3.92;5.58;8.83};EQUIV([@[Poids Net du produit  (KG)]];{0;0.5;1;2;5;10;20;30;40;60;100};1));0)

Attention, comme il y avait des points comme séparateur décimal, je les ai remis...

Si ce sont des virgules, il te faudra les remplacer...

Bonne apm


0