Eu tenho 350 colunas. Abaixo está um subconjunto de todos os dados.
Usei a ferramenta "Classificar do menor para o maior". Fornece resultados apenas para uma coluna. Caso contrário, ele poderá classificar a primeira coluna e as outras colunas serão alteradas de acordo com a primeira. Mas quero classificar todas as colunas de AZ separadamente.
Quero classificar os dados por distrito.
Responder1
1.Selecione a coluna que deseja classificar. Em seguida, clique em “Classificar do menor para o maior”.
2.Escolha "Continuar com a seleção atual".
Você pode ver que apenas uma coluna foi classificada.
Repita isso para as 349 colunas restantes :)
Para fazer tudo junto de uma só vez:
Abra a planilha que deseja classificar.
Abra o editor VBA usando Alt+F11
Inserir > Módulo
Cole este código:
Subsort_columns_separately_AZ() Dim rngStart como intervalo Dim rngHeaders como intervalo Dim c como intervalo Definir rngStart = ActiveSheet.Range("A2") Definir rngHeaders = ActiveSheet.Range(rngStart, rngStart.End(xlToRight)) Para cada c em rngHeaders ActiveSheet.Sort.SortFields.Clear Chave ActiveSheet.Sort.SortFields.Add:=c, _ SortOn:=xlSortOnValues, Ordem:=xlAscendente, DataOption:=xlSortNormal Com ActiveSheet.Sort .SetRange ActiveSheet.Range(c, c.End(xlDown)) .Header = xlSim .MatchCase = Falso .Orientação = xlTopToBottom .SortMethod = xlPinYin .Aplicar Terminar com Próximo Finalizar sub
- No código, altere
ActiveSheet.Range("A2")
o endereço da célula onde começa sua tabela de dados, por exemploActiveSheet.Range("B5")
. - BaterF5
Nota: se você tiver células vazias em seus dados, este código precisará de ajustes para funcionar corretamente nas colunas que possuem células vazias.