Excel Número arredondado até um número específico dado um intervalo

2

Eu tenho um conjunto de números definidos, como este:

50
100
200
500
1000

Eu gostaria de arredondar um número para o número mais próximo assim:

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

Existe alguma função específica que eu possa usar?

    
por giò 01.03.2018 / 16:30

5 respostas

6

Você pode usar as funções INDEX e MATCH para fazer seu arredondamento.

Coloque os números que deseja arredondar na ordem decrescente em uma coluna (suponho que eles estejam nas células A1: A5). Coloque o número que você deseja arredondar em outra célula (vou assumir que está em B1).

Em outra célula, insira a fórmula

=INDEX($A$1:$A$5,MATCH(B1,$A$1:$A$5,-1))

Isso retornará o número de B1 arredondado para o próximo número mais alto do intervalo A1: A5.

A maneira como isso funciona é que MATCH localiza a posição no intervalo A1: A5 do número mais baixo que é maior que ou igual ao número em B1. INDEX retorna o valor do intervalo A1: A5 na classificação retornada por MATCH .

Observe que números maiores que 1000 (o maior número no intervalo) retornarão # N / A. Se você quiser evitar arredondar 0 até 50, você pode inserir 0 na célula A6 e alterar os intervalos na fórmula para $ A $ 1: $ A $ 6 (valores de zero ou menos serão arredondados para zero).

    
por 01.03.2018 / 17:16
2

Assumindo que seu valor está na A1

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

(com a fórmula acima, qualquer coisa acima de 1000 não será arredondada)

    
por 01.03.2018 / 16:51
2

Uso:

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

    
por 01.03.2018 / 17:03
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

Fórmula:

 =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))))
    
por 15.05.2018 / 13:50
-1

Se você tiver um intervalo razoavelmente pequeno, poderá usar a função LOOKUP () do Excel.

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

Observação: Essa abordagem só é útil se você souber os valores de todos os números a serem arredondados antecipadamente. Se você precisar arredondar um número arbitrário cujo valor não é conhecido, use uma das outras soluções.

    
por 02.03.2018 / 11:10