
Общая формула
=ROUND(price,0)-0.01
Резюме
Чтобы округлить цены до ближайшего значения 0,99, вы можете использовать функцию ОКРУГЛ и затем вычесть 0,01. В показанном примере формула C6:
=ROUND(B6,0)-0.01
который округляет значение в B6 до ближайшего целого доллара, а затем вычитает 0,01.
Объяснение
В показанном примере цель состоит в том, чтобы округлить цену до ближайшего значения, заканчивающегося на 0,99. Так, например, если в настоящее время цена составляет 5,31 доллара, результат должен быть 4,99 доллара. Лучший способ подумать о проблеме - это переформулировать ее следующим образом: «округлить цену до ближайшего целого доллара минус 1 пенни». Другими словами, решение состоит из двух частей: (1) округление и (2) вычитание.
Для округления мы используем функцию ROUND с аргументом num_digits, установленным в ноль (0) для отсутствия десятичных знаков:
=ROUND(B6,0) // nearest dollar
Функция ОКРУГЛ с нулем будет округлять до ближайшего целого доллара. После округления формула просто вычитает 0,01, чтобы получить значение 0,99. Скопированная формула в C6:
=ROUND(B6,0)-0.01
При значении 63,39 в B6 формула решается следующим образом:
=ROUND(B6,0)-0.01 =ROUND(63.39,0)-0.01 =63-0.01 =62.99
С MROUND
Другой вариант округления в этом случае - функция ОКРУГЛ. Вместо округления до определенного числа десятичных знаков, ОКРУГЛЕНИЕ округляет до ближайшего кратного, указанного в качестве аргумента значимости. Это означает, что мы можем использовать MROUND для округления до ближайшего доллара, задав значение, кратное 1, например:
=MROUND(B6,1) // nearest dollar
Тогда эквивалентная формула:
=MROUND(B6,1)-0.01
Чтобы выполнить округление в большую или меньшую сторону до ближайшего кратного, см. Функции ПОТОЛОК и ПОЛ.