У меня есть набор определенного числа, например:
50
100
200
500
1000
Я хотел бы округлить число до ближайшего числа, как это:
20 => 50
55 => 100
433 => 500
Есть ли какая-то конкретная функция, которую я мог бы использовать?
У меня есть набор определенного числа, например:
50
100
200
500
1000
Я хотел бы округлить число до ближайшего числа, как это:
20 => 50
55 => 100
433 => 500
Есть ли какая-то конкретная функция, которую я мог бы использовать?
Вы можете использовать функции INDEX
и MATCH
для выполнения округления.
Поместите числа, которые вы хотите округлить, в порядке убывания в одном столбце (я предполагаю, что они находятся в ячейках A1:A5). Поместите число, которое вы хотите округлить, в другую ячейку (я предполагаю, что оно находится в B1).
В другой ячейке введите формулу
=INDEX($A$1:$A$5,MATCH(B1,$A$1:$A$5,-1))
Это вернет число от B1, округленное до следующего наибольшего числа из диапазона A1:A5.
Это работает так, что MATCH
находит положение в диапазоне A1:A5 самого низкого числа, которое больше или равно числу в B1. INDEX
возвращает значение из диапазона A1:A5 в части, возвращаемой MATCH
.
Обратите внимание, что числа выше 1000 (самый высокий номер в диапазоне) вернут # N/A. Если вы хотите избежать округления 0 до 50, введите 0 в ячейку A6 и измените диапазоны в формуле на $ A $ 1:$ A $ 6 (значения от нуля или меньше будут округлены до нуля).
Предполагая, что ваше значение в A1
=IF(A1<=50,50,IF(A1<=100,100,IF(A1<=200,200,IF(A1<=500,500,IF(A1<=1000,1000,A1)))))
(с приведенной выше формулой ничего больше 1000 не будет округлено)
10 > round up to the nearest whole number
100 > round up to the nearest multiple of 5
1000 > round up to the nearest multiple of 10
10000 > round up to multiple of 50
50000 > round up to multiple of 100
100000 > round up to multiple of 1000
100000 < round up to multiple of 10000
Формула:
=IF(I6<=10,MROUND(I6,1),IF(I6<=100,MROUND(I6,5),IF(I6<=1000,MROUND(I6,10),IF(I6<=10000,MROUND(I6,50),IF(I6<=50000,MROUND(I6,100),IF(100000>I6,MROUND(I6,1000),IF(100000<=I6,MROUND(I6,10000))))
Если у вас достаточно маленький диапазон, вы можете использовать функцию LOOKUP() в Excel.
=LOOKUP(A1, {20,55,433}, {50,100,500})
Примечание. Этот подход полезен только в том случае, если вы знаете значения всех чисел, которые необходимо округлить заранее. Если вам нужно округлить произвольное число, значение которого неизвестно, то вам следует использовать одно из других решений.