Como mover uma linha inteira para a parte inferior da planilha ativa com base no valor da célula no Excel?
No Excel, você pode frequentemente precisar reorganizar seus dados com base no status ou valor em uma coluna específica. Por exemplo, após rastrear o progresso de tarefas, você pode querer que todas as linhas onde o status é "Concluído" sejam movidas para a parte inferior da sua planilha, mantendo as tarefas ativas ou em andamento no topo. Relocar automaticamente linhas inteiras de acordo com um valor de célula pode tornar sua planilha mais fácil de gerenciar, destacar prioridades e ajudá-lo a focar eficientemente nos itens não concluídos.
Existem várias maneiras de fazer isso no Excel, incluindo usar código VBA para automação ou aproveitar fórmulas e a funcionalidade de classificação embutida do Excel. Cada abordagem tem seus próprios pontos fortes e é adequada para diferentes cenários. Abaixo estão soluções passo a passo para ajudá-lo a mover linhas inteiras para a parte inferior da sua planilha ativa com base em um valor específico de célula.
- Mover uma linha inteira para a parte inferior da planilha ativa com base no valor da célula com código VBA
- Mover uma linha inteira para a parte inferior usando fórmulas do Excel e classificação
Mover uma linha inteira para a parte inferior da planilha ativa com base no valor da célula com código VBA
Suponha que você tenha uma tabela onde a coluna C contém um status, como "Concluído", e você gostaria que qualquer linha com "Concluído" na coluna C fosse relocada instantaneamente para o final do seu intervalo de dados. Esta solução VBA é especialmente útil se você quiser um processo repetível e semi-automatizado que lide com mudanças dinâmicas de dados sem classificação manual.
1. Pressione Alt + F11 simultaneamente para abrir a janela Microsoft Visual Basic for Applications.
2. Na janela Microsoft Visual Basic for Applications, clique em Inserir > Módulo. Em seguida, copie e cole o código VBA abaixo na janela.
Código VBA: Mover uma linha inteira para a parte inferior da planilha ativa com base no valor da célula
Sub MoveToEnd()
Dim xRg As Range
Dim xTxt As String
Dim xCell As Range
Dim xEndRow As Long
Dim I As Long
On Error Resume Next
If ActiveWindow.RangeSelection.Count > 1 Then
xTxt = ActiveWindow.RangeSelection.AddressLocal
Else
xTxt = ActiveSheet.UsedRange.AddressLocal
End If
lOne:
Set xRg = Application.InputBox("Select range:", "Kutools for Excel", xTxt, , , , , 8)
If xRg Is Nothing Then Exit Sub
If xRg.Columns.Count > 1 Or xRg.Areas.Count > 1 Then
MsgBox " Multiple ranges or columns have been selected ", vbInformation, "Kutools for Excel"
GoTo lOne
End If
xEndRow = xRg.Rows.Count + xRg.Row
Application.ScreenUpdating = False
For I = xRg.Rows.Count To 1 Step -1
If xRg.Cells(I) = "Done" Then
xRg.Cells(I).EntireRow.Cut
Rows(xEndRow).Insert Shift:=xlDown
End If
Next
Application.ScreenUpdating = True
End Sub
Nota: Neste código VBA, o valor específico sendo referenciado é “Concluído”. Você pode modificar esse valor no código para corresponder ao valor que deseja acionar a movimentação da linha (por exemplo, poderá alterá-lo para "Completado" ou qualquer outro status que se ajuste ao seu fluxo de trabalho). Certifique-se de que o valor corresponda exatamente, incluindo maiúsculas e espaçamento, ou considere ajustar o código para correspondência insensível a maiúsculas, se necessário.
3. Pressione a tecla F5 ou clique no botão Executar para executar o código. No diálogo Kutools for Excel que aparecer, selecione o intervalo de colunas onde o valor de destino pode aparecer, depois clique no botão OK.
Após confirmar, o código procurará automaticamente por linhas com o valor “Concluído” na sua coluna selecionada e as relocará para a parte inferior do intervalo de dados. Essa reorganização acontece instantaneamente, economizando o tempo de classificar ou arrastar linhas manualmente.
Dicas:
- Se você tiver cabeçalhos, certifique-se de não incluí-los na sua seleção quando solicitado, para evitar mover a linha do cabeçalho.
- Este script VBA aplica-se apenas à planilha ativa no momento. Se precisar realizar esta operação em várias planilhas, repita o processo para cada planilha.
- Se seus dados contêm fórmulas ou células vinculadas, mover linhas pode causar deslocamentos nas referências. Verifique novamente sua planilha após executar a macro para garantir a integridade dos dados.
Este método VBA se destaca em situações onde você precisa processar um grande número de linhas regularmente, especialmente quando a classificação manual é ineficiente. No entanto, se você precisar de uma solução que não envolva macros, ou se preferir trabalhar diretamente com fórmulas e ferramentas padrão do Excel, considere a próxima abordagem.

Desbloqueie a Magia do Excel com o Kutools AI
- Execução Inteligente: Realize operações de células, analise dados e crie gráficos — tudo impulsionado por comandos simples.
- Fórmulas Personalizadas: Gere fórmulas sob medida para otimizar seus fluxos de trabalho.
- Codificação VBA: Escreva e implemente código VBA sem esforço.
- Interpretação de Fórmulas: Compreenda fórmulas complexas com facilidade.
- Tradução de Texto: Supere barreiras linguísticas dentro de suas planilhas.
Mover uma linha inteira para a parte inferior usando fórmulas do Excel e classificação
Para usuários que preferem não usar macros ou querem uma maneira mais transparente e baseada em fórmulas para gerenciar seus dados, você pode alcançar o mesmo efeito usando colunas auxiliares e a funcionalidade de classificação embutida do Excel. Este método funciona bem em ambientes colaborativos ou arquivos que precisam ser compartilhados com outros que podem ter configurações de segurança de macro habilitadas.
1. Insira uma nova coluna auxiliar à direita ou à esquerda dos seus dados existentes. Para ilustração, se os cabeçalhos dos seus dados estiverem na linha 1 e os valores começarem na linha 2, e o status estiver na coluna C, insira uma nova coluna D e nomeie-a como "ChaveOrdenação" ou similar.
2. Na primeira célula da coluna auxiliar (excluindo o cabeçalho, por exemplo, D2), insira a seguinte fórmula:
=IF(C2="Done",1,0)
Esta fórmula atribuirá 1 às linhas onde a coluna C é "Concluído" e 0 a todas as outras linhas.
3. Pressione Enter para confirmar a fórmula, depois copie-a para baixo ao longo de todas as linhas de dados. Basta arrastar a alça de preenchimento de D2 até a última linha dos seus dados, ou clique duas vezes na alça de preenchimento para preenchimento automático, caso a coluna adjacente esteja preenchida.
4. Selecione qualquer célula no intervalo de dados, depois vá até a guia Dados na faixa de opções do Excel e clique em Classificar.
5. Na caixa de diálogo Classificar, selecione a coluna auxiliar ("ChaveOrdenação") no menu suspenso "Classificar por", e escolha a ordem Menor para Maior. Isso manterá todas as linhas com "Concluído" (marcadas como 1) na parte inferior e o restante (marcadas como 0) no topo.
6. Clique em OK para aplicar a classificação. Agora seus dados serão reorganizados de modo que todas as entradas concluídas ou "Concluído" apareçam na parte inferior da tabela.
Explicações de parâmetros e dicas:
- Você pode alterar "Concluído" na fórmula para qualquer outro indicador de status relevante para sua planilha (por exemplo, "Completado", "Inativo"). Certifique-se de que a grafia corresponda exatamente aos seus dados.
- Se você quiser mover linhas com vários valores (por exemplo, tanto "Concluído" quanto "Cancelado"), use uma fórmula como:
=IF(OR(C2="Done",C2="Canceled"),1,0)
- Para reverter o efeito (ou seja, linhas "Concluído" no topo), classifique em ordem Maior para Menor ou troque 0 e 1 na fórmula.
Essa abordagem não exclui nem oculta nenhuma linha e mantém intacta a estrutura dos seus dados. É ideal para colaborar com outros, garantindo compatibilidade entre diferentes versões do Excel e evitando problemas potenciais com arquivos habilitados para macro.
Artigos relacionados:
Melhores Ferramentas de Produtividade para Office
Impulsione suas habilidades no Excel com Kutools para Excel e experimente uma eficiência incomparável. Kutools para Excel oferece mais de300 recursos avançados para aumentar a produtividade e economizar tempo. Clique aqui para acessar o recurso que você mais precisa...
Office Tab traz interface com abas para o Office e facilita muito seu trabalho
- Habilite edição e leitura por abas no Word, Excel, PowerPoint, Publisher, Access, Visio e Project.
- Abra e crie múltiplos documentos em novas abas de uma mesma janela, em vez de em novas janelas.
- Aumente sua produtividade em50% e economize centenas de cliques todos os dias!
Todos os complementos Kutools. Um instalador
O pacote Kutools for Office reúne complementos para Excel, Word, Outlook & PowerPoint, além do Office Tab Pro, sendo ideal para equipes que trabalham em vários aplicativos do Office.





- Pacote tudo-em-um — complementos para Excel, Word, Outlook & PowerPoint + Office Tab Pro
- Um instalador, uma licença — configuração em minutos (pronto para MSI)
- Trabalhe melhor em conjunto — produtividade otimizada entre os aplicativos do Office
- Avaliação completa por30 dias — sem registro e sem cartão de crédito
- Melhor custo-benefício — economize comparado à compra individual de add-ins