Si en cascade et formule calcul de données "entre" plusieurs valeurs

Bonjour,

9classeur1.xlsx (8.57 Ko)

J'ai un calcul à appliquer en fonction de plusieurs tranche de quantité de population par commune concerné. J'essaye de faire des SI en cascade pour mes tranches de populations mais je pense que j'ai une erreur quelque part. Est-ce que vous pourriez m'aider à résoudre ma problèmatique svp ?

Ma formule que je souhaiterais extrapoler à tous le tableau pour que tous ce calcul automatiquement sans avoir besoin de x formules en fonction de mes tranches de populations soit:
=SI(C8<=1999;236,22;(SI(ET(C8>=2000;C8<=4999);((C8*0,183)-213)*1,53;(SI((ET(C8>=5000;C8<=19999);((C8*0,381)-1204)*1,53;(SI(ET(C8>=20000;C8=<=99999);((C8*0,534)-4253)*1,53;(SI(C8>=100000);((C8*0,686)-19498)*1,53;"x")

Je dois faire un calcul en fonction de chaque tranche de population, mon Nbhabitant est en colonne C

Texte: Si Commune -2000 habitants -> Vrai: 236.22€ / Faux: Si commune de 2000 à 5000 habitants --> Vrai: (Nbhabitant*0.183)-213 / Faux: Si commune de 5000 à 20 000 habitants --> Vrai: (Nbhabitant*0.381)-1204 / Faux: Si commune...etc

La dernière valeur c'est si commune est supérieur à 100 000 hbts.

J'ajoute un tableau "test" sous le post

D'avance merci :)

Bonjour

Utiliser des tableaux structurés dont 1 tableau des coeffs modifiable à volonté

28classeur1-2.xlsx (11.87 Ko)

Bonjour Chris,
Ca marche, je regarde de mon coté pour faire pareil. :)

J'essaye déjà de comprendre comment tu as créé l'index ahah

Wouuuuh j'ai réussi x)
J'avoue pas tous avoir compris sur l'utilisation de la formule, je vais demander de mon coté qu'on m'explique plus en détail le fonctionnement :)

Quoi qu'il en soit merci beaucoup ! Ta solution a fonctionné !

Bon courage !

RE

Merci du retour

Le principe est simple : on trouve la bonne ligne du tableau Coeffs avec EQUIV([@[Nb habitants]];Coeffs[Nb Habitants];1)

qui cherche sur quelle ligne de la colonne Nb Habitants de Coeffs on trouve le nombre d'habitants de la ville et s'il ne trouve pas ce nombre, prend la ligne de la valeur immédiatement inférieure (ce pourquoi on indique les seuils dans le tableau Coeffs)

INDEX qui encadre cette recherche de ligne, permet de préciser la colonne dont on récupère la valeur.

EQUIV([@[Nb habitants]];Coeffs[Nb Habitants];1) est répété plusieurs fois : avec la version 365 on pourrait simplifier pour ne pas répéter ainsi...

=LET(Lig;EQUIV([@[Nb habitants]];Coeffs[Nb Habitants];1);SI([@[Nb habitants]]<INDEX(Coeffs[Nb Habitants];1);236,22;(([@[Nb habitants]]*INDEX(Coeffs[Coef];Lig))-INDEX(Coeffs[Déduction];Lig))*INDEX(Coeffs[Coef2];Lig)))

wow merci de la précision !! J'y vois déjà plus clair ! :)

Rechercher des sujets similaires à "cascade formule calcul donnees entre valeurs"