Fred a exprimé une certaine confusion et une certaine inquiétude quant aux résultats qu’il a reçus en soustrayant certains nombres. Par exemple, quand il soustrait 3809717,98 de 3799904,94, il devrait obtenir -9813,04, mais à la place obtenir -9813,04000000003.

Ce à quoi Fred est témoin est un artefact des limitations d’Excel. Le problème est finalement lié au fonctionnement d’Excel avec des nombres à virgule flottante. Les ordinateurs doivent stocker les nombres en interne sous forme de valeurs binaires, et non sous forme de valeurs décimales que nous voyons affichées à l’écran. Les nombres entiers peuvent être stockés sous forme de valeurs binaires relativement facilement. Lorsque vous ajoutez une virgule décimale dans le mélange, le stockage de très grands ou très petits nombres devient plus problématique – Excel n’est tout simplement pas en mesure de les stocker avec une précision absolue. Au lieu de cela, Excel fournit un résultat «approximatif», sur 15 chiffres (les limites de sa précision). Ainsi, vous vous retrouvez avec quelque chose comme -9813.04000000003, qui contient les 15 chiffres de précision complets possibles dans Excel.

Une discussion complète sur la façon dont les nombres à virgule flottante sont maintenus dans Excel et les ordinateurs en général peut très rapidement devenir extrêmement technique. Pour ceux qui veulent plus d’informations sur le sujet, voici deux endroits où vous pouvez commencer votre recherche:

http://support.microsoft.com/kb/78113 http://download.oracle.com/docs/cd/E19957-01/806-3568/ncg_goldberg.html

L’essentiel est que la seule façon d’obtenir les résultats « exacts » que vous voulez, au nombre de décimales que vous voulez, est d’utiliser la fonction ROUND dans vos formules, comme indiqué ici:

=ROUND(3799904.94 - 3809717.98, 2)

Vous pouvez également, si vous le souhaitez, modifier la précision utilisée dans toutes les formules en suivant ces étapes:

  1. Choisissez Options dans le menu Outils. Excel affiche la boîte de dialogue Options.

  2. Assurez-vous que l’onglet Calcul est affiché. (Voir la figure 1.)

  3. Vérifiez que la case à cocher Précision telle qu’affichée est activée.

  4. Cliquez sur OK.

Maintenant, Excel utilise la précision affichée à l’écran dans tous ses calculs, au lieu de faire des calculs avec la précision à 15 chiffres qu’il maintient normalement.

ExcelTips est votre source pour une formation Microsoft Excel rentable.

Cette astuce (3354) s’applique à Microsoft Excel 97, 2000, 2002 et 2003. Vous pouvez trouver une version de cette astuce pour l’interface ruban d’Excel (Excel 2007 et versions ultérieures) ici:

link: / excelribbon-Errors_When_Subtracting [Erreurs lors de la soustraction].