2

У меня есть набор определенного числа, например:

50
100
200
500
1000

Я хотел бы округлить число до ближайшего числа, как это:

20 => 50
55 => 100
433 => 500

Есть ли какая-то конкретная функция, которую я мог бы использовать?

5 ответов5

6

Вы можете использовать функции 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 (значения от нуля или меньше будут округлены до нуля).

2

Предполагая, что ваше значение в A1

=IF(A1<=50,50,IF(A1<=100,100,IF(A1<=200,200,IF(A1<=500,500,IF(A1<=1000,1000,A1)))))

(с приведенной выше формулой ничего больше 1000 не будет округлено)

2

Использование:

=INDEX({50,100,200,500,1000},MATCH(A1,{0,51,101,201,501}))

1

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))))
-1

Если у вас достаточно маленький диапазон, вы можете использовать функцию LOOKUP() в Excel.

=LOOKUP(A1, {20,55,433}, {50,100,500})

Примечание. Этот подход полезен только в том случае, если вы знаете значения всех чисел, которые необходимо округлить заранее. Если вам нужно округлить произвольное число, значение которого неизвестно, то вам следует использовать одно из других решений.

Всё ещё ищете ответ? Посмотрите другие вопросы с метками .