Почему эксель и калькулятор считают по разному
Вместо калькулятора используйте для математических расчетов Microsoft Excel!
Вы можете ввести простые формулы для с суммы, деления, умножения и вычитания двух или более числных значений. Кроме того, с помощью функции "Автоумма" можно быстро свести ряд значений, не вводя их в формулу вручную. Создав формулу, вы можете скопировать ее в смежные ячейки, не создав одну и ту же формулу раз за разом.
Вычитание в Excel
Умножение в Excel
Деление в Excel
Простые формулы
Все записи формул начинаются со знака равенства (=). Чтобы создать простую формулу, просто введите знак равенства, а следом вычисляемые числовые значения и соответствующие математические операторы: знак плюс (+) для сложения, знак минус (-) для вычитания, звездочку (*) для умножения и наклонную черту (/) для деления. Затем нажмите клавишу ВВОД, и Excel тут же вычислит и отобразит результат формулы.
Например, если в ячейке C5 ввести формулу =12,99+16,99 и нажать клавишу ВВОД, Excel вычислит результат и отобразит 29,98 в этой ячейке.
Формула, введенная в ячейке, будет отображаться в строке формул всякий раз, как вы выберете ячейку.
Использование автосуммирования
Формулу СУММ проще всего добавить на лист с помощью функции автосуммирования. Выберите пустую ячейку непосредственно над или под диапазоном, который нужно суммировать, а затем откройте на ленте вкладку Главная или Формула и выберите Автосумма > Сумма. Функция автосуммирования автоматически определяет диапазон для суммирования и создает формулу. Она также работает и по горизонтали, если вы выберете ячейку справа или слева от суммируемого диапазона.
Примечание: Функция автосуммирования не работает с несмежными диапазонами.
Автосуммирование по вертикали
На рисунке выше показано, что функция автосуммирования автоматически определила ячейки B2: B5 в качестве диапазона для суммирования. Вам нужно только нажать клавишу ВВОД для подтверждения. Если вам нужно добавить или исключить несколько ячеек, удерживая нажатой клавишу SHIFT, нажимайте соответствующую клавишу со стрелкой, пока не выделите нужный диапазон. Затем нажмите клавишу ВВОД для завершения задачи.
Руководство по функции Intellisense: СУММ(число1;[число2];. ) Плавающий тег под функцией — это руководство Intellisense. Если щелкнуть имя функции или СУММ, изменится синяя гиперссылка на раздел справки для этой функции. Если щелкнуть отдельные элементы функции, их представительные части в формуле будут выделены. В этом случае будет выделен только B2:B5, поскольку в этой формуле есть только одна ссылка на число. Тег Intellisense будет отображаться для любой функции.
Автосуммирование по горизонтали
Дополнительные сведения см. в статье о функции СУММ.
Избегание переписывания одной формулы
После создания формулы ее можно просто копировать в другие ячейки, а не создавать ту же формулу. Вы можете скопировать формулу или использовать маркер заполнения для копирования формулы в смежные ячейки.
Например, когда вы копируете формулу из ячейки B6 в ячейку C6, в ней автоматически изменяются ссылки на ячейки в столбце C.
При копировании формулы проверьте правильность ссылок на ячейки. Ссылки на ячейки могут меняться, если они являются относительными. Дополнительные сведения см. в статье Копирование и вставка формулы в другую ячейку или на другой лист.
Кто как, а я считаю кредиты злом. Особенно потребительские. Кредиты для бизнеса - другое дело, а для обычных людей мышеловка"деньги за 15 минут, нужен только паспорт" срабатывает безотказно, предлагая удовольствие здесь и сейчас, а расплату за него когда-нибудь потом. И главная проблема, по-моему, даже не в грабительских процентах или в том, что это "потом" все равно когда-нибудь наступит. Кредит убивает мотивацию к росту. Зачем напрягаться, учиться, развиваться, искать дополнительные источники дохода, если можно тупо зайти в ближайший банк и там тебе за полчаса оформят кредит на кабальных условиях, попутно грамотно разведя на страхование и прочие допы?
Так что очень надеюсь, что изложенный ниже материал вам не пригодится.
Но если уж случится так, что вам или вашим близким придется влезть в это дело, то неплохо бы перед походом в банк хотя бы ориентировочно прикинуть суммы выплат по кредиту, переплату, сроки и т.д. "Помассажировать числа" заранее, как я это называю :) Microsoft Excel может сильно помочь в этом вопросе.
Вариант 1. Простой кредитный калькулятор в Excel
Для быстрой прикидки кредитный калькулятор в Excel можно сделать за пару минут с помощью всего одной функции и пары простых формул. Для расчета ежемесячной выплаты по аннуитетному кредиту (т.е. кредиту, где выплаты производятся равными суммами - таких сейчас большинство) в Excel есть специальная функция ПЛТ (PMT) из категории Финансовые (Financial) . Выделяем ячейку, где хотим получить результат, жмем на кнопку fx в строке формул, находим функцию ПЛТ в списке и жмем ОК. В следующем окне нужно будет ввести аргументы для расчета:
- Ставка - процентная ставка по кредиту в пересчете на период выплаты, т.е. на месяцы. Если годовая ставка 12%, то на один месяц должно приходиться по 1% соответственно.
- Кпер - количество периодов, т.е. срок кредита в месяцах.
- Пс - начальный баланс, т.е. сумма кредита.
- Бс - конечный баланс, т.е. баланс с которым мы должны по идее прийти к концу срока. Очевидно =0, т.е. никто никому ничего не должен.
- Тип - способ учета ежемесячных выплат. Если равен 1, то выплаты учитываются на начало месяца, если равен 0, то на конец. У нас в России абсолютное большинство банков работает по второму варианту, поэтому вводим 0.
Также полезно будет прикинуть общий объем выплат и переплату, т.е. ту сумму, которую мы отдаем банку за временно использование его денег. Это можно сделать с помощью простых формул:
Вариант 2. Добавляем детализацию
Если хочется более детализированного расчета, то можно воспользоваться еще двумя полезными финансовыми функциями Excel - ОСПЛТ (PPMT) и ПРПЛТ (IPMT) . Первая из них вычисляет ту часть очередного платежа, которая приходится на выплату самого кредита (тела кредита), а вторая может посчитать ту часть, которая придется на проценты банку. Добавим к нашему предыдущему примеру небольшую шапку таблицы с подробным расчетом и номера периодов (месяцев):
Функция ОСПЛТ (PPMT) в ячейке B17 вводится по аналогии с ПЛТ в предыдущем примере:
Добавился только параметр Период с номером текущего месяца (выплаты) и закрепление знаком $ некоторых ссылок, т.к. впоследствии мы эту формулу будем копировать вниз. Функция ПРПЛТ (IPMT) для вычисления процентной части вводится аналогично. Осталось скопировать введенные формулы вниз до последнего периода кредита и добавить столбцы с простыми формулами для вычисления общей суммы ежемесячных выплат (она постоянна и равна вычисленной выше в ячейке C7) и, ради интереса, оставшейся сумме долга:
Эта формула проверяет с помощью функции ЕСЛИ (IF) достигли мы последнего периода или нет, и выводит пустую текстовую строку ("") в том случае, если достигли, либо номер следующего периода. При копировании такой формулы вниз на большое количество строк мы получим номера периодов как раз до нужного предела (срока кредита). В остальных ячейках этой строки можно использовать похожую конструкцию с проверкой на присутствие номера периода:
=ЕСЛИ(A18<>""; текущая формула; "")
Т.е. если номер периода не пустой, то мы вычисляем сумму выплат с помощью наших формул с ПРПЛТ и ОСПЛТ. Если же номера нет, то выводим пустую текстовую строку:
Вариант 3. Досрочное погашение с уменьшением срока или выплаты
Реализованный в предыдущем варианте калькулятор неплох, но не учитывает один важный момент: в реальной жизни вы, скорее всего, будете вносить дополнительные платежи для досрочного погашения при удобной возможности. Для реализации этого можно добавить в нашу модель столбец с дополнительными выплатами, которые будут уменьшать остаток. Однако, большинство банков в подобных случаях предлагают на выбор: сокращать либо сумму ежемесячной выплаты, либо срок. Каждый такой сценарий для наглядности лучше посчитать отдельно.
В случае уменьшения срока придется дополнительно с помощью функции ЕСЛИ (IF) проверять - не достигли мы нулевого баланса раньше срока:
А в случае уменьшения выплаты - заново пересчитывать ежемесячный взнос начиная со следующего после досрочной выплаты периода:
Вариант 4. Кредитный калькулятор с нерегулярными выплатами
Существуют варианты кредитов, где клиент может платить нерегулярно, в любые произвольные даты внося любые имеющиеся суммы. Процентная ставка по таким кредитам обычно выше, но свободы выходит больше. Можно даже взять в банке еще денег в дополнение к имеющемуся кредиту. Для расчета по такой модели придется рассчитывать проценты и остаток с точностью не до месяца, а до дня:
При суммировании в Microsoft Excel 2010 функцией СУММ или методом простого суммирования чисел в столбце , полученных умножением двух констант , выскакивает невероятная для такой простой операции погрешность - 0,02 сотых на каждых 12 слагаемых!
Я в шоке! Даже самый простой китайский калькулятор считает лучше.
Можете проверить - посмотрите файл.
Погрешность при суммировании Excel
Никто не знает с чем может быть связана такая погрешность при суммировании? Она конечно не.
Крах Excel при суммировании
Крах Excel при суммировании. Столкнулся с уникальной ошибкой Excel. Если в ячейке D10 нажать.
Ошибка Excel в суммировании дробных чисел
"Ваш Excel не правильно считает!" - сколько раз слышал от экономистов/менеджеров подобные.
Проверка на переполнение при суммировании
Составить программу , j проверяет, не приводит ли суммирование двух целых чисел A и B к.
А Вы не возмущайтесь
Давно известно, что калькулятор считает точнее Excel, когда речь идёт о не целых числах. На то он и калькулятор, что бы считать, а Excel - это электронная таблица, которая умеет гораздо больше калькулятора, но имеет свои недостатки
Вот с других форумов (к сожалению здесь ссылки давать нельзя):
Фактически источником ошибки является ошибка округления. Данная ошибка является следствием дефекта арифметики плавающей точки и того факта, что чаще всего десятичные дроби являются повторяющимися долями в двоичной системе счисления. Такие числа не могут представляться в конечном количестве битов. В связи с этим текстовое округление получается не всегда точным, т.к. большинство компьютеров подбирает последние цифры дробной части, исходя из ближайшего (с наименьшей разницей) эквивалента. Некоторые компьютеры не производят округления, а просто обрезают (выключают) последние биты, получая результирующую ошибку, правильно называемую ошибкой округления (в противоположность ошибке усечения, когда усекается расширение ряда). Для получения дополнительной информации обратитесь к Introduction to Numerical Methods (введение в числовые методы) авторов Peter A. Stark, Macmillian Company, 1970
. я готов объяснить, почему 3.1-3=0.1, а 4.1-4
Основа проблемы кроется именно в особенностях работы с плавающей запятой. Итак:
Для начала - вот формат числа с плавающей запятой с двойной точностью (именно он используется в Excel). И "забудем" для простоты, что байты идут от младшего старшему. Так выглядит +1:
+1: 0 011 11111111 0000 00000000 00000000 00000000 00000000 00000000 00000000
Первый "0" - это знаковый бит: 0 - "+", 1 - "-"
Затем группа из 11 битов - порядок числа. Она увеличена (для данного типа формата) на величину 3ffh, чтобы было удобно отображать отрицательные степени экспоненты. Т.е., фактически, порядок числа +1 равен 0, что и понятно.
Не очень ясно, как интерпретировать 52 последующих нуля. Тут нужно сказать, что в формате чисел с плавающей запятой используется т.н. "нормализованная" запись чисел, то есть когда значащий разряд целой части мантиссы не равен нулю - в общем случае, или равен "1" в двоичной системе исчисления; экспонента при этом соответствующим образом изменяется. Но если старший разряд - всегда "1", то зачем его хранить? Его и не хранят для экономии места, а лишь подразумевают:
1.0000 00000000 00000000 00000000 00000000 00000000 00000000 = 1.0e0
Посмотрим теперь как выглядят другие наши "подопытные":
+0.1: 0 011 11111011 1001 10011001 10011001 10011001 10011001 10011001 10011010
(обратите внимание на выделенные жирным шрифтом биты последнего байта, они сыграют потом ключевую роль!)
+3.1: 0 100 00000000 1000 11001100 11001100 11001100 11001100 11001100 11001101
+3.0: 0 100 00000000 1000 00000000 00000000 00000000 00000000 00000000 00000000
Вычтем одно число из другого и получаем (порядок в вычитании не участвует, только мантисса и "подразумеваемая" единица):
+3.1: 1.1000 11001100 11001100 11001100 11001100 11001100 11001101
+3.0: 1.1000 00000000 00000000 00000000 00000000 00000000 00000000
---------------------------------------------------------------------------------
+0.1: 0.0000 11001100 11001100 11001100 11001100 11001100 11001101
Целая часть мантиссы оказалась равной нулю, поэтому выполним нормализацию - сдвинем ее влево на 5 позиций, дополнив справа нулями(!), а порядок, соответственно, уменьшим на 5 - было 400h, стало 3fbh:
+0.1: 0 011 11111011 1001 10011001 10011001 10011001 10011001 10011001 10100000
Обратите внимание, число на долю, на "1" в 47м разряде, но больше, чем 0.1, поэтому при округлении мы и видим в ячейке Excel то, что нам нужно!
Проделаем тоже самое с 4.1-4.0 (но уже без дополнительных комментариев):
+4.1: 0 100 00000001 0000 01100110 01100110 01100110 01100110 01100110 01100110
+4.0: 0 100 00000001 0000 00000000 00000000 00000000 00000000 00000000 00000000
---------------------------------------------------------------------------------
+0.1: 0 011 11111011 1001 10011001 10011001 10011001 10011001 10011001 10000000
В 47м разряде "0", а, следовательно, мы получили меньше, чем 0.1, что нам Excel честно и показывает при большой разрядности. Почему он не поступает столь же честно при превышении? А посмотрите внимательнее - где больше отличие от "эталонного" 0.1? Во втором случае, в первом ему просто не хватает точности.
Если проделать все это с последующими числами, то будет то же самое, только хуже
Так что здесь не проблема Excel, а родимое пятно двоичной арифметики. Хотя, конечно, доля вины дяди Билла в этом тоже есть. Можно было бы воспользоваться иным представлением чисел. Однако, я не думаю, чтобы в Quattro или Lotus решение было бы иным.
А теперь представьте, что дело идет не о копейках, а о миллионах и миллиардах рублей или долларов? Вот тут-то эта мелочь и вылезет. И о подобных случаях округлений писали.
Часто при вычислении разницы двух ячеек в Excel можно видеть, что она не равна нулю, хотя числа одинаковые. Например, в ячейках A1 и B1 записано одно и тоже число 10,7 , а в C1 мы вычитаем из одного другое:
И самое странное то, что в итоге мы не получаем 0! Почему?
Причина очевидная - формат ячеек
Сначала самый очевидный ответ: если идет сравнение значений двух ячеек, то необходимо убедиться, что числа там действительно равны и не округлены форматом ячеек. Например, если взять те же числа из примера выше, то если выделить их -правая кнопка мыши -Формат ячеек (Format cells) -вкладка Число (Number) -выбираем формат Числовой и выставляем число десятичных разрядов равным 7:
Теперь все становится очевидным - числа отличаются и были просто округлены форматом ячеек. И естественно не могут быть равны. В данном случае оптимальным будет понять почему числа именно такие, а уже потом принимать решение. И если уверены, что числа надо реально округлять до десятых долей - то можно применить в формуле функцию ОКРУГЛ:
=ОКРУГЛ( B1 ;1)-ОКРУГЛ( A1 ;1)=0
=ROUND(B1,1)-ROUND(A1,1)=0
Так же есть более кардинальный метод:
- Excel 2007:Кнопка офис -Параметры Excel (Excel options) -Дополнительно (Advanced) -Задать точность как на экране (Set precision as displayed)
- Excel 2010:Файл (File) -Параметры (Options) -Дополнительно (Advanced) -Задать точность как на экране (Set precision as displayed)
- Excel 2013 и выше:Файл (File) -Параметры (Options) -Дополнительно (Advanced) -Задать указанную точность (Set precision as displayed)
Это запишет все числа на всех листах книги ровно так, как они отображены форматом ячеек. Данное действие лучше выполнять на копии книги, т.к. оно приводит все числовые данные во всех листах книги к тому виду, как они отображены на экране. Т.е. если само число содержит 5 десятичных разрядов, а форматом ячеек задан только 1 - то после применения данной опции число будет округлено до 1 знака после запятой. При этом отменить данную операцию нельзя, если только не закрыть книгу без сохранения.
Можно, правда, выкрутиться и иначе. Умножить каждое число на некую величину(скажем на 1000, чтобы 100% убрать знаки после запятой) и после этого производить вычитание и сравнение:
=((10,8*1000)-(10,7*1000))/1000=0,1
Хочется верить, что хоть когда-нибудь описанную особенность стандарта IEEE754 Microsoft сможет победить или хотя бы сделать заплатку, которая будет производить простые вычисления не хуже 50-рублевого калькулятора :)
Я много пишу о работе в программе Еxcel, есть и статья о том, как производить суммирование. Но, после этого ко мне стали поступать вопросы, почему Эксель неправильно считает сумму.
Хочу срезу сказать, что программа не может считать неправильно, за каждой такой ошибкой стоит наша невнимательность.
Причин, по которым вы получаете неверный результат, или вовсе не получаете ничего, достаточно много. Сегодня мы постараемся разобраться со всеми проблемами. Начнём, как обычно, с наиболее распространённых ошибок.
Эксель неправильно считает сумму
Если вы производите вычисления, и вдруг заметили, что ответ неверный — внимательно просмотрите все числовые ячейки.
Ошибки допускаемые при подсчёте:
- В столбце используют значения нескольких видов: чистые числа и числа с рублями, долларами, евро. Например, 10, 30, 5 руб, $4 и так далее. Или где-то не целые числа, а дробные;
- В таблице присутствуют скрытые ячейки (строки), которые добавляются к общей сумме;
- Ошибочная формула. Высока вероятность того, что допущена ошибка при вводе выражения;
- Ошибка в округлении. Задайте для всех ячеек, содержащих числа, числовой формат с 3 или 4 знаками после запятой;
- В качестве разделения целого значения используют точку вместо запятой.
Как видите, все причины ошибок — это людской фактор, а программа лишь выполняет то, что заложено в её задачах.
Эксель отказывается подсчитывать сумму
Иногда можно столкнуться с тем, что программа вообще не выполняет каких либо вычислений, даже не показывает промежуточную сумму при выделении столбца.
И опять, таки, всё дело в нашей невнимательности или в неверных настройках. А для получения верных расчётов, необходима правильная настройка Excel для финансовых расчётов.
Давайте пройдём по порядку, по всем пунктам.
Текстовые и числовые значения
Часто копируя и вставляя данные из разных источников в программу Эксель, пользователь сталкивается с проблемой в расчётах.
Причина, чаще всего, лежит на поверхности — Эксель воспринимает введённые данные как текст. Переведите все ячейки с цифрами в числовой формат — всё заработает.
Посмотрите внимательно на ячейки с цифрами, если вы заметили в левом верхнем углу треугольник — то это текстовая ячейка.
Соответственно, программа видит текст и не определяет числа. Для того, чтобы это изменить, нужно выделить ячейки с числами.
Появится значок с восклицательным знаком. Клик по нему — преобразовать в число.
Обычно этого достаточно для того, чтобы программа стала работать. Но, если этого не случилось, двигаемся далее.
Автоматический расчёт формул в Excel
Если программа не хочет считать, проверьте в настройках указание на автоматические расчёты. иногда этот параметр может быть отключен самой программой, в целях экономии мощностей.
Пройдите по пути — файл — параметры — формулы — установите галочку — автоматически.
После изменения данной настройки программа подсчитает всё, что вам нужно.
Сумма не совпадает с калькулятором
Опять же, вся проблема в округлении. Например, при подсчёте на калькуляторе, как правило, считаем 2 знака после запятой.
Получается один результат, а в таблице может быть настроено знаков гораздо больше. Получается расчёт точнее, но он не совпадает с «калькуляторным».
Для того, чтобы проверить настройки, откройте формат ячеек. Нажмите на вкладку — число, выбрав числовой формат. Здесь можно указать требуемое число десятичных знаков.
В заключение хочу сказать, что программа Excel никогда не ошибается, ошибаются люди. Иногда всё дело в настройках программы.
Поэтому, если вы заметили, что Эксель неправильно считает сумму, не спеша проверьте всё то, о чём я сегодня написал для вас.
Читайте также: