As macros do Excel podem não ser tão abrangentes quanto outras ferramentas de automação, mas a validade e a eficiência do Excel VBA não podem ser prejudicadas. Se você trabalha no Excel e em outras ferramentas do Microsoft Office, como Word e Access, não tem como errar com o VBA e seus recursos.

MS Excel é uma ferramenta poderosa que oferece uma tonelada de opções para seus usuários. Desde o armazenamento de dados até a criação de painéis automatizados, você pode fazer tudo no Excel e em suas planilhas.

Se você deseja usar o VBA para automatizar suas responsabilidades de classificação no Excel, experimente essas macros eficientes e fáceis de aplicar.

Baixe um conjunto de dados fictício

Para começar, você pode baixar um conjunto de dados fictício para trabalhar em suas habilidades de macro do Excel.

Fique tranquilo, uma vez que você pegue o jeito dessas macros e entenda melhor como as coisas funcionam, você pode mudar o código para caber em suas próprias planilhas de trabalho ou escola.

Você pode baixar o conjunto de dados usado neste artigo se desejar acompanhar.

Download: Conjunto de dados Excel

1. Classificando uma coluna usando macros do Excel

Use este código simples para classificar uma coluna de dados em uma planilha do Excel. Se você baixou o conjunto de dados fictício, pode tentar classificar a coluna E (Unidades vendidas).

Abra um novo arquivo do Excel e salve-o com um Pasta de trabalho habilitada para macro do Excel (.xlsm) tipo de pasta de trabalho. Este arquivo armazenará a macro para classificar seus dados de outro arquivo.

Relacionado: Melhores Cursos Online para Dominar Excel Avançado

Você controlará seu (s) arquivo (s) a partir do arquivo de macro, que interagirá com suas pastas de trabalho separadamente.

Insira o seguinte código:

Sub sortwithheaders ()
Pastas de trabalho ("Amostra financeira.xlsx"). Planilhas (1). Ativar
Range ("A1: P701"). Sort Key1: = Range ("e1"), Order1: = xlAscending, Header: = xlYes
End Sub

Onde:

  • Key1: Defina a (s) coluna (s) que deseja classificar
  • Pedido1: Método de ordenação (crescente / decrescente)
  • Cabeçalho: Se o seu conteúdo tiver cabeçalhos, esta opção permanecerá como xl Sim. Alternativamente, selecione xlNo.

O intervalo consistirá no endereço da célula inicial e no endereço da célula final para que tudo seja capturado para fins de classificação. O resultado é que todo o seu conjunto de dados será classificado com base nos dados da coluna E.

2. Classificação de dados dinâmicos em uma única coluna

Pode haver casos em que seu ponto de partida é definido, mas seu ponto de extremidade é dinâmico. Nesse caso, você pode tornar seu código dinâmico para que ele pegue o final do intervalo automaticamente.

Para acomodar a mudança nos dados, use o código abaixo:

Sub sortwithheaders ()
Pastas de trabalho ("Amostra financeira.xlsx"). Planilhas (1). Ativar
Range ("A1", Range ("A1"). End (xlDown)). Sort Key1: = Range ("e2"), Order1: = xlAscending, Header: = xlSim
End Sub

Onde:

  • Fim (xlDown): Esta função irá escolher automaticamente a última célula preenchida automaticamente

Observação: Se a fórmula encontrar uma célula em branco em uma coluna, ela considerará a célula anterior como o fim do intervalo.

Relacionado: Como criar atalhos de teclado personalizados no Microsoft Excel

3. Classificando Várias Colunas Juntas

Pode haver situações em que você deseja classificar dados em várias colunas de uma vez. Para fazer isso, você pode usar o seguinte código para atingir seu objetivo:

Sub SortMultipleColumns ()
Com planilhas ("Planilha1")
Com .Cells (1, "A"). CurrentRegion
.Cells.sort Key1: =. Range ("B1"), Order1: = xlAscending, _
Chave2: =. Intervalo ("E1"), Ordem2: = xlAscendente, _
Orientação: = xlTopToBottom, Cabeçalho: = xlSim
Termina com
Termina com
End Sub

4. Classificação de colunas em várias folhas

Quando você está lidando com várias planilhas, pode querer deixar seus dados prontos para serem colocados em um painel. Um dos aspectos mais importantes da preparação de dados é classificá-los e organizá-los em um determinado formato para apresentar às partes interessadas ou clientes.

Uma opção é percorrer cada folha manualmente, classificar as colunas necessárias e prosseguir para a próxima etapa. Como alternativa, por que não deixar o VBA fazer isso por você?

A intenção do código a seguir é percorrer cada planilha disponível na pasta de trabalho e, com base nas colunas especificadas, classificar os dados disponíveis.

Relacionado: Funções de pesquisa do Microsoft Excel para pesquisar planilhas com mais eficiência

Veja como você pode classificar colunas em várias páginas:

Sub SortWS ()
Dim ws como planilha
'Ative a planilha pretendida
Pastas de trabalho ("Financial Sample.xlsx"). Ative
'Percorrer cada planilha individual automaticamente usando o loop for
Para cada ws no ActiveWorkbook. Folhas
'ativar cada planilha individual
ws. Ativar
'Defina o intervalo e, em seguida, classifique a coluna com base nos seus requisitos. Nesse caso, apenas uma coluna está sendo classificada.
Range ("A1", Range ("p1"). End (xlDown)). Sort Key1: = Range ("E1"), Order1: = xlDescending, Header: = xlSim
'Comando usado para passar para a próxima planilha, uma vez que a planilha anterior foi classificada
Próximo ws
End Sub

Todas as informações que começam com aspas simples são comentários do VBA. Eles não são executados durante a fase de execução. No entanto, cada comentário do VBA adicionado é uma adição significativa ao código, pois você pode definir a essência, a funcionalidade e outras partes relevantes nas seções do código.

5. Cópia de dados classificados de uma folha para outra

Imagine uma situação em que você deseja classificar os dados e copiar todo o conjunto de dados (ou partes dele) em uma planilha recém-adicionada. Nesses casos, você pode usar o código a seguir para realizar a tarefa em mãos:

Sub SortWS ()
Dim ws como planilha
'Ative a planilha pretendida
Pastas de trabalho ("Financial Sample.xlsx"). Ative
'Percorrer cada planilha individual automaticamente usando o loop for
Para cada ws no ActiveWorkbook. Folhas
'ativar cada planilha individual
ws. Ativar
'Defina o intervalo e, em seguida, classifique a coluna com base nos seus requisitos.
'Neste caso, apenas uma coluna está sendo classificada.
Range ("A1", Range ("p1"). End (xlDown)). Sort Key1: = Range ("E1"), Order1: = xlDescending, Header: = xlSim
'Comando usado para passar para a próxima planilha, uma vez que a planilha anterior foi classificada
Próximo ws
'Crie uma nova planilha dentro da pasta de trabalho para armazenar os novos dados
ActiveWorkbook. Folhas. Adicionar. Nome = "Resultados"
'Copie e cole os dados classificados na folha recém-adicionada
Folhas ("Folha1"). Intervalo ("A1: p701"). Destino da cópia: = Folhas ("Resultados"). Intervalo ("a1")
End Sub

O código acima irá classificar os valores na coluna E, adicionar uma nova planilha Resultados na pasta de trabalho existente e cole os resultados classificados na célula A1.

Criação de macros de classificação no Excel

Excel VBA é uma linguagem bacana que pode economizar muito tempo e esforço. Usando macros VBA, você pode criar painéis extensos, classificar dados facilmente com alguns cliques e executar funções diferentes com facilidade.

Felizmente, a funcionalidade do Excel não termina com macros. Confira algumas dicas e truques para se tornar um usuário do Excel mais eficiente.

Os 9 principais sites e blogs para aprender dicas e truques do Excel

Quer você seja um mestre em Excel ou apenas começando, aqui estão os nove principais sites e blogs que você pode usar para aprender algumas dicas e truques.

Leia a seguir

CompartilhadoTweetE-mail
Tópicos relacionados
  • Programação
  • Microsoft Excel
  • Macros
Sobre o autor
Gaurav Siyal (8 artigos publicados)

Gaurav Siyal tem dois anos de experiência em redação, escrevendo para uma série de empresas de marketing digital e documentos de ciclo de vida de software.

Mais de Gaurav Siyal

Assine a nossa newsletter

Junte-se ao nosso boletim informativo para dicas de tecnologia, análises, e-books grátis e ofertas exclusivas!

Clique aqui para se inscrever