Como ordenar automaticamente números aleatórios

1

Eu tenho duas colunas em uma planilha.

A contém uma fórmula que gera um número aleatório:

=RANDBETWEEN(1,100)

B calcula a classificação do número aleatório em A usando

=RANK.AVG(A2,A$2:A$274).  

Eu gostaria de classificar o Coronel B, mas não posso, porque os números aleatórios são recalculados sempre que eu clico no botão SORT.

Existe alguma maneira de fazer uma coluna de números aleatórios que serão classificados automaticamente?

    
por user348514 07.08.2015 / 17:25

1 resposta

3

Tente alguma variação disso:

A    B         C
1    =rand()    =large($b$1:$b$10,a1)
2    =rand()    =large($b$1:$b$10,a2)
3    =rand()    =large($b$1:$b$10,a3)
4    =rand()    =large($b$1:$b$10,a4)
5    =rand()    =large($b$1:$b$10,a5)
6    =rand()    =large($b$1:$b$10,a6)
7    =rand()    =large($b$1:$b$10,a7)
8    =rand()    =large($b$1:$b$10,a8)
9    =rand()    =large($b$1:$b$10,a9)
10   =rand()    =large($b$1:$b$10,a10)

Eu não entendo totalmente a ordem de cálculos e recálculos no Excel, mas isso parece funcionar uma vez que você tenha recalculado pelo menos uma vez (a coluna C pode não ser ordenada quando você cola pela primeira vez, mas depois de um recálculo) .

Máté Juhász aponta que você também pode substituir =large($b$1:$b$10,a1) por =large($b$1:$b$10,row() ) , o que reduziria a necessidade da coluna A por completo.  Neste exemplo, eu tenho duas linhas de cabeçalho, então eu ajustei row() por 2.

A         B
Random Number Tables
Unsorted    Sorted 
=rand()    =large($a$2:$a$12,row()-2)
=rand()    =large($a$2:$a$12,row()-2)
=rand()    =large($a$2:$a$12,row()-2)
=rand()    =large($a$2:$a$12,row()-2)
=rand()    =large($a$2:$a$12,row()-2)
=rand()    =large($a$2:$a$12,row()-2)
=rand()    =large($a$2:$a$12,row()-2)
=rand()    =large($a$2:$a$12,row()-2)
=rand()    =large($a$2:$a$12,row()-2)
=rand()    =large($a$3:$a$12,row()-2)
    
por 07.08.2015 / 18:12