Excel: masquer #VALEUR!

Résolu/Fermé
ar168 - 7 août 2011 à 21:48
Nyctaclope Messages postés 5315 Date d'inscription dimanche 6 avril 2008 Statut Membre Dernière intervention 11 décembre 2022 - 8 août 2011 à 11:04
Bonjour,

J'utilise Excel pour faire des calculs "simples" du style prix unitaire * quantité = prix total.

Pour ce faire, dans la cellule "prix total" (G11), j'ai ma formule =SOMME(D11*F11)

Très bien, sauf que... si aucune donnée ne figure en D11, la mention #VALEUR! apparait en G11.

J'ai essayé une mise forme conditionnelle du style "si la valeur de la cellule = #VALEUR! > texte blanc. Trop simpliste.. ça ne marche pas.

J'ai trouve des formules =SI... mais je e saisi pas l'astuce...

Merci pour vos conseils.

A voir également:

2 réponses

Nyctaclope Messages postés 5315 Date d'inscription dimanche 6 avril 2008 Statut Membre Dernière intervention 11 décembre 2022 1 250
Modifié par Nyctaclope le 7/08/2011 à 22:04
Bonsoir

D'abord la formule =SOMME(D11*F11) est une incongruïté, même si cela marche ..
A quoi sert-il de faire la somme d'un produit et de rien ?

La formule correcte serait = D11*F11 , ou mieux, dans ton cas =Arrondi(D11*F11;2) pour arrondir au centime.

Enfin ton erreur vient sans doute que la cellule D11 est au format texte, et non nombre. Excel n'aime pas multiplier un nombre par un texte, même vide, qui ne peut valoir zéro ..

A+
Nyctaclope

Le plus joli des poèmes de la mathématique : e^(i.PI)=i^2
trois nombres "sacrés" d'horizons différents qui se donnent la main ...
0
J'ai toujours utilisé "=SOMME(...)

Par acquis de conscience, j'ai modifié la formule en = D11*F11 . dés que je fais "enter", la formule devient =SOMME(D11*F11)...

D11 & F11 sont touts deux au format nombre.

A+
0
Nyctaclope Messages postés 5315 Date d'inscription dimanche 6 avril 2008 Statut Membre Dernière intervention 11 décembre 2022 1 250
Modifié par Nyctaclope le 7/08/2011 à 22:48
Re

Effectivement, beaucoup utilisent somme() dans ce cas, pour moi ce n'est pas très "pro", mais cela n'empêche pas Excel de faire un calcul exact ..
Je ne vois pas pourquoi le somme() est automatique, ce n'est pas normal, sans doute une option déclarée quelque part ... Mais a priori ce n'est pas gênant pour toi ...

Essaye de faire le test suivant pour voir si cela vient de "fausses" valeurs numériques :

=SI(ET(ESTNUM(D11);ESTNUM(F11));ARRONDI(D11*F11;2);"")

Le calcul ( arrondi ) ne se fera et ne s'affichera que si les deux cellules contiennent une valeur numérique, sinon c'est le texte vide qui s'affiche ...

Et tu peux compléter quelque part par un test : =ESTNUM(D11) qui affichera VRAI ou FAUX
de même =ESTTEXTE(D11)

En principe le message d'erreur #VALEUR! signifie que le calcul n'est pas autorisé
Et commence par faire un SUPPR sur D11, au cas où elle contiendrait quelque chose ( un espace invisible ? .. )


A+
Nyctaclope
0
Pour l'histoire de la fonction "somme": mystère d'Excel. Comme tu dis probablement une option cochée quelque part... J'utilise la version 2007.

La formule =SI(ET(ESTNUM(D11);ESTNUM(F11));ARRONDI(D11*F11;2);"") fonctionne!

Les fausses valeur viennent peut-être du fait que les données en D11 viennent "d'une base de données" présente dans les autres feuilles du classeur. Pour moi, le principal, c'est que ça marche!

Un GRAND merci!
0
Nyctaclope Messages postés 5315 Date d'inscription dimanche 6 avril 2008 Statut Membre Dernière intervention 11 décembre 2022 1 250
8 août 2011 à 11:04
Re

De rien ..

Ton expression du début "si aucune donnée ne figure en D11" était en fait inexacte.

J'avais compris que ta cellule D11 était une cellule de saisie, en fait, selon ce que tu dis, elle contient sans doute une formule du type Recherchev(), donc elle contient TOUJOURS une donnée calculée. Selon la construction de ta formule, elle doit de temps à autre afficher le texte vide "" ( recherche infructueuse ) et dans ce cas le calcul foire , et c'est normal, un texte ne pouvant faire l'objet d'un calcul numérique ( mais calcul "texte" oui ! ).

C'était , non un problème de format de cellule de saisie, mais un problème de nature incorrecte de donnée dans la cellule D11.

Dans ce cas la formule SI() proposée est probablement la seule solution acceptant tous les cas de figure.

Mais alors attention si tu dois effectuer ensuite un calcul à partir de G11, qui peut contenir le texte vide selon les cas.

Il faudra que tu utilises une formule du type =SI(ESTNUM(G11); ...;....) pour que tu n'aies pas de message d'erreur ...

Bonne suite à toi, et peut être à une autre fois ...

A+
Nyctaclope
0