A classificação personalizada no Excel é um recurso muito útil. Neste artigo, falaremos sobre como atualizar automaticamente a classificação personalizada em um intervalo usando o VBA do Excel.
Ao usar a classificação personalizada, você descobrirá que esse é um recurso incrível no Excel. No entanto, se você usar esse recurso com frequência, também poderá encontrar um problema. Você classificará em um intervalo com determinados dados e informações. Quando você adiciona dados e informações adicionais ao intervalo, a ordem no intervalo não muda automaticamente. A imagem abaixo mostra um exemplo de tal condição.
Quando você adiciona um novo conjunto de dados ao intervalo, ele não altera a classificação automaticamente. Se você ainda quiser classificar esse intervalo maior com novos conjuntos de dados pelos mesmos critérios, será necessário realizar o processo de classificação personalizada novamente. Você pode ver que isso é muito problemático, principalmente quando você precisa atualizar constantemente os dados e informações da planilha. Toda vez que você adicionar novas informações ao intervalo, precisará classificar novamente. Para resolver esse problema e concluir sua tarefa rapidamente, você pode continuar lendo este artigo.
Macro de registro
Quando os critérios de classificação personalizada são muito complexos, você achará difícil escrever os códigos VBA diretamente. Assim, agora você pode primeiro gravar uma macro. E os códigos desta macro podem ser usados em outras macros. O processo de gravação de códigos é muito fácil.
- Antes de gravar uma macro, você precisa adicionar a guia do VBA na faixa de opções. Aqui, clique com o botão direito do mouse em qualquer uma das guias da faixa de opções.
- E, em seguida, escolha “Personalizar a Faixa de Opções” no menu.
- Agora, na janela “Opções do Excel”, marque a opção “Desenvolvedor” na lista de “Abas principais”.
- Depois disso, clique em “OK” na janela. Portanto, você adicionou a guia na faixa de opções.
- Agora você vai voltar para a planilha. Clique na guia "Desenvolvedor" que você adicionou.
- E então clique no botão “Gravar Macro” na barra de ferramentas. Assim, a janela “Gravar Macro” irá aparecer.
Por outro lado, você também pode clicar no pequeno botão na parte inferior da planilha para substituir as 6 etapas acima.
- Agora, na janela “Record Macro”, insira o nome na primeira caixa de texto. Atribua uma tecla de atalho, se necessário. E então adicione a descrição de acordo com sua necessidade.
- A seguir clique em “OK”. Assim, a macro começa a registrar todas as operações que você fizer.
- Selecione o intervalo que você precisa classificar na planilha.
- Clique na guia "Início".
- E, em seguida, clique no botão "Classificar e filtrar" na faixa de opções.
- Na lista suspensa, escolha a opção “Classificação personalizada”.
- Na janela “Ordenar”, defina os critérios de acordo com a sua necessidade. Todas as ações serão gravadas na macro.
Quando estiver gravando uma macro, não faça etapas adicionais. Caso contrário, essas etapas também serão registradas. E isso causará problemas na parte seguinte.
- Depois de terminar a configuração na janela “Classificar”, clique em “OK” para salvar as configurações.
- Agora clique na guia “Desenvolvedor” na faixa de opções novamente.
- E, em seguida, clique no botão "Parar gravação". Quando a planilha estiver na condição de gravar macros, o botão mudará para “Parar Gravação”.
Você também pode clicar no botão na parte inferior da planilha para interromper a gravação da macro. Assim, você terminou a gravação. Todos os critérios de classificação foram salvos na Macro 1.
Usar macros VBA do Excel
Nesta parte, mostraremos como usar macros VBA para atualizar a classificação personalizada em sua planilha. E você também usará as macros gravadas nesta parte.
- Clique na guia "Desenvolvedor" na faixa de opções.
- E então clique no botão “Visual Basic” na barra de ferramentas. Em vez disso, você também pode pressionar o botão “Alt + F11” no teclado para substituir as 2 etapas.
- No editor do Visual Basic, clique duas vezes na planilha na área “VBAProject”. Nesta planilha, você precisa atualizar a classificação personalizada. E em seu arquivo real, você precisa clicar duas vezes na planilha correspondente.
- Agora insira os seguintes códigos na área.
Private Sub Worksheet_Change(ByVal Target As Range) End Sub
- E, em seguida, insira os seguintes códigos entre as duas sentenças VBA acima.
Application.ScreenUpdating = False
If Not Intersect(Target, Range("A1:C13")) Is Nothing Then
End If
Aqui o alcance é estimado. Serão 12 meses para o volume de vendas, e junto com a primeira linha do cabeçalho, inserimos o intervalo “A1:C13”. Você também pode inserir o intervalo nos códigos de acordo com sua planilha real.
- Nesta etapa, abra o módulo 1 no editor. Os códigos neste módulo são o processo de classificação personalizada que você fez anteriormente. Você pode ver que usar o recurso de gravação de macros pode economizar muito tempo.
- Agora copie a parte principal deste módulo.
- E, em seguida, clique duas vezes no tarobtenha a planilha na parte “VBAProject”.
- Depois disso, cole os códigos nos códigos IF-END IF.
- E então modifique o intervalo nos códigos de acordo com sua necessidade. A macro gravada é um pouco complicada e redundante. Você também pode modificá-lo de acordo com sua necessidade. Portanto, os códigos VBA completos ficarão assim:
Private Sub Worksheet_Change(ByVal Target As Range)
Application.ScreenUpdating = False
If Not Intersect(Target, Range("A1:C13")) Is Nothing Then
With ActiveWorkbook.Worksheets("Sheet1").Sort
.SortFields.Clear
.SortFields.Add Key:=Range("B2:B13"), _
SortOn:=xlSortOnValues, Order:=xlDescending, DataOption:=xlSortNormal
.SortFields.Add Key:=Range("C2:C13"), _
SortOn:=xlSortOnValues, Order:=xlDescending, DataOption:=xlSortNormal
End With
With ActiveWorkbook.Worksheets("Sheet1").Sort
.SetRange Range("A1:C13")
.Header = xlYes
.MatchCase = False
.Orientation = xlTopToBottom
.SortMethod = xlPinYin
.Apply
End With
End If
End Sub
Adicionamos outro WITH-END WITH aos códigos. Assim, ficará mais claro que o resultado do recorde. Se você tiver outros requisitos, também poderá modificá-lo de acordo com sua necessidade real. Você precisa ter cuidado ao modificar os códigos. Caso contrário, você produzirá algum resultado errado na planilha.
- Agora você terminou os códigos VBA no editor. Você pode voltar para a planilha e testar o resultado. Quando você adiciona o mês seguinte e os números correspondentes ao intervalo, a classificação personalizada é atualizada automaticamente.
Portanto, você nunca precisará atualizar manualmente a classificação personalizada toda vez que inserir novos elementos no tarobter alcance. Por outro lado, você precisa salvar esta pasta de trabalho como um arquivo do Excel habilitado para macro. Caso contrário, você perderá os códigos se salvar como um arquivo comum.
Forneceremos Assistência às Vítimas de Corrupção do Excel
Todos sabemos que o Excel é muito poderoso e pode ajudá-lo a concluir seu trabalho de maneira rápida e fácil. Mas o aplicativo Excel ainda está longe de ser perfeito. Às vezes, o Excel corrompe devido a vários motivos diferentes. Depois que o Excel for corrompido, você não conseguirá concluir suas tarefas com este aplicativo. Para funcionar melhor, você precisará repará-lo o mais rápido possível.
Nossa empresa trabalha há muitos anos na área de recuperação, principalmente na recuperação de Excel. Portanto, você pode recorrer a nossa equipe técnica para obter ajuda. Com anos de experiência, podemos descobrir facilmente o motivo que causa danos aos seus arquivos. E para te ajudar melhor reparar danos no arquivo Excel xlsx, desenvolvemos uma ferramenta de terceiros. Esta ferramenta é muito fácil de manipular e você não precisa se preocupar com o problema de privacidade.
Introdução do autor:
Anna Ma é especialista em recuperação de dados em DataNumen, Inc., líder mundial em tecnologias de recuperação de dados, incluindo reparar erro docx do Word e produtos de software de reparo do Outlook. Para mais informações visite www.datanumen.com









