Excel : fonction si dans fonction si

Résolu/Fermé
guguss - 26 oct. 2009 à 15:12
 guguss - 26 oct. 2009 à 16:07
Bonjour,

Malgré maintes et maintes recherches sur internet, je n'ai pas trouvé de réponse à mon problème excelien.
J'explique ce dernier:

J'ai besoin de créer une fonction SI à 3 variables, donc les conditions sont aussi des variables. Prenons le cas que je dois résoudre:

Si mon entreprise appartient au groupe 1, et qu'elle vend un nombre de produit compris entre 1 et 10, elle aura une remise de 20€ par produit vendu. Si elle en vend entre 10 et 20, elle aura une remise de 30€ par produit vendu. Si elle en vend entre 20 et 30, elle aura une remise de 50€ par produit vendu.

Si mon entreprise appartient au groupe 2, et qu'elle vend un nombre de produit compris entre 1 et 30, elle aura une remise de 20€ par produit vendu. Si elle en vend entre 30 et 50, elle aura une remise de 30€ par pdouit venu, Si elle en vend entre 50 et 100, elle aura une remise de 50€ par produit vendu.

Même système avec un 3eme groupe d'entreprise.

Que faire ?? Il ne me reste plus beaucoup de cheveux à arracher...
A voir également:

2 réponses

Vaucluse Messages postés 26496 Date d'inscription lundi 23 juillet 2007 Statut Contributeur Dernière intervention 1 avril 2022 6 395
26 oct. 2009 à 15:26
Bonjour
la formule SI et facile à trouver, mais vu le nombre de vos variables, ne marchera que si vous avez Excel 2007, car avant , la formule n'accepte que 7 variables
à tout hasard, vous pouvez traiter le groupe 2 comme suit:
=SI(ET(Cell groupe=1;Cell nombre >=20); cell nombre*50;SI(ET(Cell groupe=1;Cell nombre >=10);cell nombre*30;SI(ET(Cell groupe=1;Cell nombre >=10);cell nombre*20)))
mais ceci ne traite qu'un groupe et (avant 2007) vous ne pouvez pas traiter les 3 qui réclament 9 conditions.

Pour contourner le problème au cas où
on peut passer par des colonnes de renvoi hors champ que vous pouvez masquer pour ne pas perturber votre présentation:
en 1° colonne la formule:
=SI(ET(Cell groupe=1;Cell nombre >=20); cell nombre*50;SI(ET(Cell groupe=1;Cell nombre >=10);cell nombre*30;SI(ET(Cell groupe=1;Cell nombre >=0);cell nombre*20;Cell col2)))
dans la colonne 2 vous placez la formule du 2° groupe et vous finissez en cell col3
en colonne 3 vous placez la formule lièe au groupe 3
Enfin, vous pouvez aussi n'utiliser que deux colonnes en répartissant un groupe à cheval les deux colonnes.
La colonne 1 vous renverra toujours ainsi la bonne information.
Bonne chance
Crdlmnt
0
Merci pour la réponse, ayant Excel 2007, j'ai pu cumulé 10 fois la fonction =SI(ET( , et cela marche !

Un peu long à taper mais efficace et sûr.

Merci Vaucluse pour avoir résolu mon problème si rapidement
*clap clap*
0