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/?kbid=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. Affichez la boîte de dialogue Options Excel. (Dans Excel 2007, cliquez sur le bouton Office, puis sur Options Excel. Dans Excel 2010 ou une version ultérieure, affichez l’onglet Fichier du ruban, puis cliquez sur Options.)

  2. À gauche de la boîte de dialogue, cliquez sur Avancé.

  3. Faites défiler les options disponibles jusqu’à ce que vous arriviez à la section intitulée «Lors du calcul de ce classeur». (Voir la figure 1.)

  4. Assurez-vous que la case à cocher Définir la précision comme affiché est activée.

  5. 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 (6176) s’applique à Microsoft Excel 2007, 2010, 2013, 2016, 2019 et Excel dans Office 365. Vous pouvez trouver une version de cette astuce pour l’ancienne interface de menu d’Excel ici:

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