Descrição
Use essa função para classificar dinamicamente um intervalo ou uma matriz por uma ou mais colunas em ordem crescente ou decrescente.
Sintaxe
SORT(array, [sort_column1], [sort_order1], [sort_order2], [sort_order3])
Entradas
Esta função aceita o seguinte argumento:
| Nome | Necessário | Descrição | Entrada válida |
|---|---|---|---|
Matriz |
Sim | O intervalo ou a matriz a ser classificada. | Uma célula, um intervalo de células ou uma fórmula que resulta em qualquer um desses itens. |
[sort_column1] |
Não | O número da coluna que você deseja classificar. A primeira coluna (A) é 1. | Um inteiro positivo que representa a coluna a ser classificada ou uma fórmula que resulta em um inteiro positivo. |
[sort_order1] |
Não | A ordem de classificação da coluna especificada. O padrão é 1 (ordenar em ordem crescente). | Um inteiro positivo com o valor 1 (crescente), ou -1 (decrescente), ou uma fórmula que resulte em um desses valores. |
[by_column] Se a classificação for feita por coluna. |
Não | Se você quiser que a classificação seja feita por coluna. O padrão é FALSE (classificar os dados verticalmente por linhas). | TRUE ou 1 = classificar por coluna. FALSO ou 0 = classificar por linha, ou uma fórmula que resulte em uma dessas opções. |
Exemplos
Dados de amostra
| A | B. | C | D | E | |
|---|---|---|---|---|---|
| 1 | Nome | Sobrenome | Idade | Cidade | Salário |
| 2 | João | Smith | 35 | Filadélfia | 75000 |
| 3 | Alice | Johnson | 28 | Chicago | 65000 |
| 4 | Bob | Branco | 42 | Los Angeles | 85000 |
| 5 | Harry | Harrison | 33 | Chicago | 70000 |
| 6 | Alice | Kramden | 39 | Brooklyn | 72000 |
Fórmulas de amostra
| Caso de uso | Fórmula | Resultado | |||||||||||||||||||||||||
|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|
| Classifica um conjunto de dados por uma coluna específica em ordem crescente. | =SORT(A2:E6, 3, 1) |
Essa fórmula classifica todo o conjunto de dados por idade em ordem crescente. Para esse conjunto de dados, ela retornaria o seguinte:
|
|||||||||||||||||||||||||
| Classifica um conjunto de dados por uma coluna específica em ordem crescente, preservando as relações de linha originais. | =SORT(A2:E6, 4, 1, 0) |
Essa fórmula classifica todo o intervalo pela coluna City (coluna 4) em ordem crescente, preservando as relações de linha originais. O parâmetro Para esse conjunto de dados, ela retornaria o seguinte:
|
|||||||||||||||||||||||||
| Se você selecionar um subconjunto de células, classifique o resultado por outra coluna. | =SORT(FILTER(A2:E6, C2:C630), 5, -1) |
Esta fórmula usa FILTRO para selecionar funcionários com mais de 30 anos (
|
|||||||||||||||||||||||||
| Gerar uma lista de nomes que não tenha duplicatas. | =SORT(UNIQUE(A2:A6), 1, 1) |
Essa fórmula usa UNIQUE para criar uma lista de nomes de forma que cada nome ocorra apenas uma vez na lista e, em seguida, classifica-os em ordem alfabética. Para esse conjunto de dados, ela retornaria o seguinte:
|
|||||||||||||||||||||||||
| Localize o nome da pessoa mais velha em um conjunto de dados. | =TAKE(SORT(A2:B6, 2, -1), 1, 1) |
Essa fórmula primeiro classifica os dados por idade em ordem decrescente, de modo que a pessoa mais velha (Bob, 42 anos) aparece primeiro. TAKE e, em seguida, retorna o valor Name da primeira linha. Para esse conjunto de dados, ela retornaria o seguinte:
|
Notas
SORT:
- Você pode classificar por várias colunas com a ordem especificada.
- Funciona com intervalos estáticos e matrizes dinâmicas.
- Suporta ordens de classificação ascendentes e descendentes.
Dicas:
- Se você tiver linha(s) de cabeçalho, inicie os valores da matriz uma linha abaixo (por exemplo, no conjunto de dados acima, inicie com A2 em vez de A1) se não quiser que os cabeçalhos sejam incluídos.
- SORT pode ser combinado com outras funções, incluindo:
Funções relacionadas
Aqui você encontra as outras funções de fórmula de matriz suportadas nas planilhas da Workiva.