Фред выразил некоторое замешательство и беспокойство по поводу результатов, полученных при вычитании определенных чисел. Например, когда он вычитает 3809717,98 из 3799904,94, он должен получить -9813,04, но вместо этого получит -9813,04000000003.

То, что видит Фред, является артефактом ограничений Excel. Проблема в конечном итоге связана с тем, как Excel работает с числами с плавающей запятой. Компьютеры должны хранить числа внутри как двоичные значения, а не как десятичные значения, которые мы видим на экране. Целые числа относительно легко можно сохранить как двоичные значения. Когда вы добавляете десятичную точку в смесь, то сохранение очень больших или очень маленьких чисел становится более проблематичным — Excel просто не может хранить их с абсолютной точностью. Вместо этого Excel предоставляет «приблизительный» результат до 15 цифр (пределы его точности). Таким образом, вы получите что-то вроде -9813.04000000003, которое содержит полные 15 цифр точности, возможные в Excel.

Полное обсуждение того, как числа с плавающей запятой поддерживаются в Excel и компьютерах в целом, может очень быстро стать чрезвычайно техническим. Для тех, кто хочет получить больше информации по теме, вот два места, где вы можете начать свое исследование:

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

Суть в том, что единственный способ получить «точные» результаты, которые вы хотите, с нужным количеством десятичных знаков, — это использовать функцию ОКРУГЛ в ваших формулах, как показано здесь:

=ROUND(3799904.94 - 3809717.98, 2)

При желании вы также можете изменить точность, используемую во всех формулах, выполнив следующие действия:

  1. Откройте диалоговое окно «Параметры Excel». (В Excel 2007 нажмите кнопку «Office», а затем выберите «Параметры Excel. В Excel 2010 или более поздней версии откройте вкладку« Файл »на ленте и нажмите кнопку« Параметры ».)

  2. В левой части диалогового окна нажмите «Дополнительно».

  3. Прокрутите доступные параметры, пока не дойдете до раздела «При расчете этой книги». (См. Рис. 1.)

  4. Убедитесь, что установлен флажок «Установить точность как отображаемую».

  5. Щелкните ОК.

Теперь Excel использует точность, отображаемую на экране, во всех своих вычислениях, вместо того, чтобы выполнять вычисления с полной 15-значной точностью, которую он обычно поддерживает.

ExcelTips — ваш источник экономичного обучения Microsoft Excel.

Этот совет (6176) применим к Microsoft Excel 2007, 2010, 2013, 2016, 2019 и Excel в Office 365. Вы можете найти версию этого совета для старого интерфейса меню Excel здесь:

link: / excel-Errors_When_Subtracting [Ошибки при вычитании].