Fórmula do Excel: Classifique aleatoriamente -

Índice

Fórmula genérica

=SORTBY(rng,RANDARRAY(COUNTA(rng)))

Resumo

Para classificar uma lista ou tabela em ordem aleatória, você pode usar a função SORTBY com a função RANDARRAY. No exemplo mostrado, a fórmula em D5 é:

=SORTBY(data,RANDARRAY(COUNTA(data)))

onde "dados" é o intervalo nomeado B5: B14. O resultado é uma nova ordem de classificação aleatória sempre que a planilha é recalculada.

Explicação

A função SORTBY permite a classificação com base em um ou mais arrays "classificar por", desde que tenham dimensões compatíveis com os dados que estão sendo classificados. Neste exemplo, existem 10 valores sendo classificados, as primeiras 10 letras do alfabeto. Para gerar 10 números aleatórios para classificar, estamos usando a função RANDARRAY junto com a função CONT.valores como este:

RANDARRAY(COUNTA(data))

COUNTA conta os valores em dados e retorna o número 10, que vai para a função RANDARRAY como o argumento de linhas. RANDARRAY retorna uma matriz de 10 valores decimais como este:

(0.634511231774083;0.802832736299988;0.0143439778447176;0.456799995279187;0.535834928742951;0.993607835061287;0.217641630408339;0.638010821263368;0.917156124714596;0.489852948650118)

Esta matriz é fornecida para a função SORTBY como o argumento by_array1. SORTBY usa os valores aleatórios para classificar os dados e retorna as 10 letras em um intervalo de derramamento começando em D5.

Nota: RANDARRAY é uma função volátil e será recalculada toda vez que a planilha for alterada, fazendo com que os valores sejam reclassificados. Para interromper a classificação automática de valores, você pode copiar as fórmulas e, em seguida, usar Colar especial> Valores para converter fórmulas em valores estáticos.

Artigos interessantes...