Résultat affiché faux

  • Initiateur de la discussion Spirou
  • Date de début
S

Spirou

Guest
Bonjour,

J'utilise des classeurs excel assez volumineux (jusqu'à 50 onglets) avec beaucoup de formules dont pas mal de recherchev et de références à d'autres cellules, dans d'autres onglets pour compiler des données.

Je me suis aperçu (par hasard) que certains résultats affichés par les cellules étaient faux !
Par exemple 5 + 5 = 12 !
Ensuite toutes les cellules qui font référence à la cellule en erreur reprennent la valeur erronnée.

Tout se passe comme si Excel ne faisait pas le calcul.

En fait si je clique sur la cellule en erreur, puis dans la barre de formule et que je fais ENTREE, le calcul redevient bon !!

De la même façon, si je vais dans la barre de formule, que je selectionne tous les termes puis que je clique sur F9, j'obtiens le bon résultat.
Ceci me montre qu'Excel sait lire les bonnes données source. En revanche je ne comprends pas pourquoi il ne me les affiche pas.

Je précise tout de suite que je travaille en mode calcul automatique, et que l'activation de F9 hors de la barre de formule ne conduit pas au bon résultat.

Ceci me pose un grave problème pour la gestion de mes données et surtout me fait douter de tous les résultats d'Excel.

Par ailleurs, comme j'utilise beaucoup de classeurs, avec beaucoup d'onglets et beaucoup de formules dans chaque onglet, je ne peux pas me permettre de recliquer dans la barre de formule de chaque cellule pour effectuer des calculs corrects.

Quelqu'un a-t-il déjà eu ce problème ?? Ou connaît-il une manière de s'en sortir ??

J'avais pensé à une macro qui viendrait éditer les formules et les recopier sur elles mêmes pour forcer les calculs justes dans toutes les cellules, mais je ne sais pas le faire (il faut bien prendre le texte de la formule et non pas la cellule). En plus, vu le volume de données, je ne suis pas sûr que ce soit viable.

Evidemment, le mieux serait qu'Excel fasse un calcul juste du premier coup.


Je vous remercie d'avance pour votre aide.
Spirou

PS : je vous joins une version édulcorée du fihcier pour vous permettre de vous faire une idée.
Pour la circonstance j'ai tout mis en valeurs, sauf les cellules en erreur, bien sûr, et supprimé toutes les feuilles adjacentes. [file name=Erreur_de_calcul.zip size=16072]http://www.excel-downloads.com/components/com_simpleboard/uploaded/files/Erreur_de_calcul.zip[/file]
 

Pièces jointes

  • Erreur_de_calcul.zip
    15.7 KB · Affichages: 41

Ti_

Nous a quitté
Repose en paix
Salut

tu as collé le & et la fonction fin.mois qui n'est donc plus reconnue comme une formule, il te faut les séparer pour retrouver une formule qui fonctionne normalement
SOMME(D$110:D$143)-SOMME.SI($A$110:$A$143;''&DATE(ANNEE(D90)+1;MOIS(D90);1);D$110:D$143)
 
S

Spirou

Guest
Oui c'est une idée, mais en fait, quand tu fais ça, tu vas dans la barre de formule, tu modifies la formule et tu valides : alors le calcul devient juste.

Mais avec la formule originale, ça fonctionne aussi ! Tu vas cliquer dans la barre de formule puis tu valide et le résultat devient bon. La formule est bien reconnue. Par ailleurs la même formule est utilisée à d'autres endroits et fonctionne parfaitement.

Tu peux faire le test d'aller dans la barre de formule, de surligner la partie 'somme.si(...)' et de cliquer sur F9, tu verras que le calcul se fait.

La question demeure : pourquoi le calcul ne se fait-il pas tout seul ??

A bientôt
Spirou
 

Ti_

Nous a quitté
Repose en paix
oui, sauf que tu ne dois pas te laisser abuser par ce calcul qui est faux. Il ne suffit pas d'afficher le résultat intermédiaire pour voir l'erreur, le plus fiable est de sélectionner l'outil Evalution de formule et d'afficher toutes les étapes du calcul une par une.
Tu verras bien alors qu'à un moment ton SOMME.SI renvoie une valeur d'erreur #/NOM? (normal il ne reconnaît pas ce &fin.mois) et ne le prend tout simplement pas en compte.
Evidemment, le résultat est alors un peu erronné.
 

Ti_

Nous a quitté
Repose en paix
Salut et merci José,
oui c'est vrai que moi, je m'en sers tellement souvent (à vrai dire, à peu près chaque fois que j'écris une formule un peu complexe) que j'ai placé ce bouton directement sur une de mes barres d'outils personnalisées.
Ceci dit, je ne sais plus si dans Excel 2000 l'outil evaluation de formule existe et en tout cas, s'il est aussi précis qu'avec XP/2003
 
S

Spirou

Guest
Merci à tous les 2.
Pour l'instant je n'arrive pas à mettre en oeuvre votre proposition. Dans la barre d'audit j'ai un losange jaune avec un point d'exclamation ('repérer une erreur') mais cette fonction n'est pas active sur une cellule qui n'affiche pas de résultat en erreur.

Ici j'ai Excel 2000, je regarderai ce soir sous XP si j'y arrive mieux.
 

spirou

XLDnaute Nouveau
Merci pour vos informations, après test chez moi hier soir, c'est bien ce &fin.mois qui génère l'erreur.

Après analyse complémentaire, finalement le problème est qu'Excel n'a pas traduit cette formule en &FIN.MOIS qui elle fonctionne très bien !

Et aussi que je n'ai pas d'outil d'audit des formules performant sur mon PC de bureau.

Merci encore à tous les 2 pour votre aide rapide et efficace
 
A

AV

Guest
Ave tous,

Je m'immisce dans ce fil pour souligner (une fois de plus) le ''danger'' à utiliser les fonctions (portabilité) de l'utilitaire d'analyse.
On en a là une illustration parfaite !
Il est bien préférable, même si c'est souvent plus compliqué, d'utiliser les fonctions natives.
Dans le cas présent, la fonction FIN.MOIS peut être très avantageusement remplacée !
Au lieu de FIN.MOIS(A1;2)
pourquoi ne pas écrire :
=DATE(ANNEE(A1);MOIS(A1)+2+1;)

C'était pour le smilblick...

AV [aaa]
 

Discussions similaires

Réponses
30
Affichages
1 K

Statistiques des forums

Discussions
312 232
Messages
2 086 461
Membres
103 220
dernier inscrit
samira2024