Порядок арифметических операций в MS Excel
Вообще, тема этой статьи относится скорее к базовой школьной программе арифметики. В самом деле — то что умножение имеет приоритет перед суммированием, вроде бы должны знать все… Но, практика показывает, даже это знание не мешает тем, к то с MS Excel знаком поверхностно, допускать досадные ошибки в вычислениях.
Простейший пример на который любят ссылаться авторы учебников: почему один и тот же пример 7+5х3 при расчете на калькуляторе дает результат «36», а при расчете в Excel, «22»?
На самом деле, как это не странно, и тот и другой результат правильный, просто нужно понимать как ведется счет. Калькулятор решает пример в порядке ввода данных и пошагово, то есть сначала мы вводим 7+5 и получаем промежуточный результат 13 (1 шаг), а ввод следующего арифметического знака (умножение), калькулятор считает уже за второй шаг и умножает промежуточный результат на следующее число, т.е. 12х3. Вот тебе и 36.
MS Excel решает тот же пример по всем правилам математики и не разделяя пример на шаги-действия: сперва идет умножение 5х3, а затем сложение: 15+7=22.
Приоритет расчета внутри excel-формулы всегда происходят в следующем порядке:
- Круглые скобки
- Возведение в степень
- Умножение
- Деление
- Сложение
- Вычитание.
Другими словами, если бы решили посчитать тот же самый пример в экселе «по-калькуляторному», формула выглядела бы как (7+5)х3. В этом случае сперва будет выполнено действие в скобках, и только потом следующее действие в порядке приоритета.
Удобнее всего сперва записывать «сложные» формулы состоящие из нескольких частей сперва целиком, а затем, расставить скобки вручную перемещаясь по формуле с помощью стрелок на клавиатуре. Особенно внимательно следите за тем, чтобы скобки всегда были парными, иначе MS Excel выдаст сообщение об ошибке.
Пример решения «сложной» формулы со скобками в MS Excel:
В моем примере вы можете видеть формулу: =((25*3)-(52+5))/12. Расчет результата в ней MS Excel проводит в следующем порядке:
- Сначала вычисляются части формулы внутри общих скобок, в свою очередь также стоящие в скобках: 25*3=75 и 52+5=57
- Затем из первого полученного результата вычитается второй полученный результат: 75-57=18
- Скобки наконец кончились, поэтому теперь можно выполнить последнее действие, т.е. деление: 18/12=1,5