EXCEL : Enlever #Valeur!

Résolu/Fermé
Xti-Basque Messages postés 34 Date d'inscription jeudi 11 septembre 2008 Statut Membre Dernière intervention 7 décembre 2020 - 1 août 2011 à 18:57
 Akhii - 3 mai 2012 à 20:07
Bonjour tout le monde,

Comment enlever l'erreur "#Valeur!" tout en laissant la formule dans la cellule?
Voici la formule :

=SI(ET(C5>D5);((A3*A4)-(12,5));SI(ET(D5>C5);((C4*C3)-(12,5));SI(ET(C5=D5);((B4*B3)-(12,5));"")))

Merci, et bonne semaine :)

5 réponses

Mike-31 Messages postés 18310 Date d'inscription dimanche 17 février 2008 Statut Contributeur Dernière intervention 29 mars 2024 5 073
1 août 2011 à 22:07
Salut,

Ta formule peut être écoutée comme ceci

=SI(C5>D5;(A3*A4)-12,5;SI(D5>C5;(C4*C3)-12,5;SI(C5=D5;(B4*B3)-12,5;"")))

ensuite le message d'erreur "#Valeur!" est certainement causé par une saisie texte ou espace dans tes cellules de calcul. Alors soit tu peux éviter ce genre de saisie soit tu géres l'erreur comme ceci

=SI(ESTERREUR(SI(C5>D5;(A3*A4)-12,5;SI(D5>C5;(C4*C3)-12,5;SI(C5=D5;(B4*B3)-12,5;""))));"";SI(C5>D5;(A3*A4)-12,5;SI(D5>C5;(C4*C3)-12,5;SI(C5=D5;(B4*B3)-12,5;""))))

Ou en plus court en testant l'addition de tes cellules

=SI(ESTERREUR(A3+A4+B3+B4+C3+C4+C5+D5);"";SI(C5>D5;(A3*A4)-12,5;SI(D5>C5;(C4*C3)-12,5;SI(C5=D5;(B4*B3)-12,5;""))))
1
Raymond PENTIER Messages postés 58387 Date d'inscription lundi 13 août 2007 Statut Contributeur Dernière intervention 16 avril 2024 17 087
1 août 2011 à 23:19
... et compte-tenu que (A3*A4)-12,5 est équivalent à A3*A4-12,5 la formule finale peut encore s'affiner en :
=SI(ESTERREUR(A3+A4+B3+B4+C3+C4+C5+D5);"";SI(C5>D5;A3*A4-12,5;SI(D5>C5;C4*C3-12,5;SI(C5=D5;B4*B3-12,5;""))))
que je me risquerais même à simplifier encore :
=SI(ESTERREUR(A3+A4+B3+B4+C3+C4+C5+D5);"";SI(C5>D5;A3*A4;SI(D5>C5;C4*C3;SI(C5=D5;B4*B3;"")))-12,5)
0
gbinforme Messages postés 14946 Date d'inscription lundi 18 octobre 2004 Statut Contributeur Dernière intervention 24 juin 2020 4 684
2 août 2011 à 00:06
Bonsoir Xti-Basque, Mike, Raymond,

Puisque l'on en est aux simplifications de la formule sans avoir d'erreur,il est possible de réduire ainsi :

=SI(ESTERREUR(A3+A4+B3+B4+C3+C4);"";SI(C5>D5;A3*A4;SI(C5=D5;B4*B3;C4*C3))-12,5)

ou en 2007/2010
=SIERREUR((SI(C5>D5;A3*A4;SI(C5=D5;B4*B3;C4*C3))-12,5);"")
0
Raymond PENTIER Messages postés 58387 Date d'inscription lundi 13 août 2007 Statut Contributeur Dernière intervention 16 avril 2024 17 087
2 août 2011 à 00:52
Absolument ! Et là, je crois que tu as atteint les limites ...

Cet exercice devrait être profitable à tous ceux qui ont de gros et lourds fichiers avec des multitudes de formules compliquées, qui ralentissent les calculs et augmentent la place occupée en mémoire.
0
eriiic Messages postés 24569 Date d'inscription mardi 11 septembre 2007 Statut Contributeur Dernière intervention 28 décembre 2023 7 209
2 août 2011 à 07:30
Bonjour tout le monde,

Désolé de modérer votre enthousiasme mais on ne peut pas dire que :
=SI(ESTERREUR(A3+A4+B3+B4+C3+C4+C5+D5);"";SI(C5>D5;(A3*A4)-12,5;SI(D5>C5;(C4*C3)-12,5;SI(C5=D5;(B4*B3)-12,5;""))))
soit équivalent à :
=SI(ESTERREUR(SI(C5>D5;(A3*A4)-12,5;SI(D5>C5;(C4*C3)-12,5;SI(C5=D5;(B4*B3)-12,5;""))));"";SI(C5>D5;(A3*A4)-12,5;SI(D5>C5;(C4*C3)-12,5;SI(C5=D5;(B4*B3)-12,5;""))))

Une chaine dans A3 par exemple n'empêche pas de faire B4*B3 ou C4*C3, dont l'affichage sera bloqué par le SI(ESTERREUR(A3+A4+B3+B4+C3+C4+C5+D5)...

eric
0
Merci, çà marche a merveille.
0