Fonction SI imbriqués

rikette -  
Vaucluse Messages postés 27336 Date d'inscription   Statut Contributeur Dernière intervention   -
Bonjour,

Je travaille sur une fonction SI, que je pensais maîtriser, or j'ai voulu faire un changement et elle ne me donne pas ce que je souhaite. Au bout d'une heure de recherche, je perds patience. Alors est-ce que quelqu'un pourrait me venir en aide car je trouve pas mon erreur.

Voici la fonction :

=SI(ARRONDI(I2;2)<0,998*H2;0;SI(ARRONDI(I2;2)>=0,998*H2;75*0,75;SI(ARRONDI(I2;2)=H2;75;SI(ARRONDI(I2;2)>H2;75*1,1;SI(ARRONDI(I2;2)<=1,004*H2;1,1*75;SI(ARRONDI(I2;2)>1,004*H2;1,25*75;""))))))

Mes données qui m'ont fait écrire cette formule sont :
- Si le réalisé est strictement inférieur à -0,2% de l'objectif, alors 0
- Si le réalisé est supérieur ou égal à -0,2% de l'objectif et strictement inférieur à l'objectif, alors 75*0,75
- Si le réalisé est égal l'objectif (strictement), alors 75
- Si le réalisé est supérieur à l'objectif et inférieur ou égal à 0,4%*l'objectif (1,004), alors 1,1*75
-Si le réalisée est strictement supérieur à 0,4% * l'objectif (1,004), alors 1,25*75

C'est la fin de formule qui ne fonctionne pas.

Avec tous mes remerciements.

Cordialement.
A voir également:

5 réponses

Vaucluse Messages postés 27336 Date d'inscription   Statut Contributeur Dernière intervention   6 448
 
Bonjour
Je n'ai ,pas tout compris de ce que vous vouliez faire, mais je pense que vous devriez reécrire votre formule dans l'autre sens, c'est à dire en commençant par le plafond des conditions,qui semble ,ici être le dernier item et ensuite les aligner en dégressif, soit:
SI(ARRONDI(I2;2)>1.004*H2;1.25*75;"")))))), qui devrait se trouver en première condition.
En fait il faut bien comprendre qu'excel arrête de lire la formule à la première condition remplie et dans votre cas,la valeur de votre calcul 1.004*H2 est supérieure à celle de 0,998*H2, alors qu'excel considère d'abord cette dernière condition et la trouve forcément remplie.
tout ce qui est supèrieur à 0,998*H2 va vous renvoyer 75*0,75
Excel n'ira pas jusqu'à H2 si l'item précédent se vérifie, (or H2 est > que 0,998*H2,)alors que le contraire marchera
j'espère m'être bien expliqué. Revenez si problème.
Bonne chance
Crdlmnt
2
rikette
 
Merci pour ton aide j'ai trouvé mon erreur, elle était dans la 1ère partie (2ème fonctions) donc il prenait le reste en compte.

Cordialement.

Rikette
0
pou pouille Messages postés 212 Statut Membre 31
 
je vien de tapper ta formule essaye simplement de remplacer les virgules par des points ;)

=SI(ARRONDI(I2;2)<0.998*H2;0;SI(ARRONDI(I2;2)>=0.998*H2;75*0.75;SI(ARRONDI(I2;2)=H2;75;SI(ARRONDI(I2;2)>H2;75*1.1;SI(ARRONDI(I2;2)<=1.004*H2;1.1*75;SI(ARRONDI(I2;2)>1.004*H2;1.25*75;""))))))
0
rikette
 
Merci, mais si je mets des points à la place des virgules, Excel m'envoit un message d'erreur alors ça ne fonctionne toujours pas.
:)
0
pou pouille Messages postés 212 Statut Membre 31
 
chez moi j'arrivais a rentrer la formule en changeant les virgules par des point ( donc je pense que tu devrai changer le format dans excel)
Outil \ Option \ international \ séparateur de décimale => .
(pour excel 2002/03)
ensuite j'avai juste un problème de #ref ce qui est normal vu que mes autres cases sont vides
0
rikette
 
Encore moi...
Non désolée j'ai beau changé, ça ne change rien.
Ma formule fonctionne mais seulement les 3 premières fonctions, les 3 autres qui sont censés être dans le positif, augmenter la prime ne fonctionne pas. Si je suis au dessus de l'objectif, il ne l'intègre pas, il met tout le monde à 0 ou 56,25...

Voilà mon soucis...
0

Vous n’avez pas trouvé la réponse que vous recherchez ?

Posez votre question
Vaucluse Messages postés 27336 Date d'inscription   Statut Contributeur Dernière intervention   6 448
 
Pas de quoi, mais si vous n'avez changé que le début, il doit rester un problème dans votre formule:
l'item :
SI(ARRONDI(I2;2)>H2;75*1.1;
vient avant le dernier
SI(ARRONDI(I2;2)>1.004*H2;1.25*75;""))))))
Donc toujours sur le même principe, tout ce qui est plus grand que H2 est éliminé de la dernière condition
si vous mettez la condition >H2 en fin de formule, elle traitera tout ce qui se trouve entre H2 et 1,004*H2, ce qui n'est pas le cas actuellement.
un H2*1,002 aura le même résultat qu'un H2*1,005
Sauf erreur de ma part dans l'interprétation de vos conditions, car je n'ai pas vos données.
Bien cordialement

0