KutoolsforOffice — Uma solução, cinco ferramentas poderosas.Fazer mais com menos esforço.

Como mover uma linha inteira para o fim da folha de cálculo atual com base no valor de uma célula no Excel?

AutoraSiluvia Data de Modificação

No Excel, poderá frequentemente precisar de reorganizar os seus dados com base no estado ou valor de uma determinada coluna. Por exemplo, após acompanhar o progresso das tarefas, pode querer que todas as linhas com o estado «Done» sejam automaticamente movidas para o fim da folha de cálculo, mantendo as tarefas ativas ou em curso no topo. Mover automaticamente uma linha inteira com base no valor de uma célula torna a sua folha mais fácil de gerir, destaca prioridades e ajuda-o a concentrar-se de forma eficiente nos itens por concluir.

Existem várias formas de alcançar este objetivo no Excel, incluindo o uso de código VBA para automatização ou a aplicação de fórmulas combinadas com a funcionalidade integrada de ordenação do Excel. Cada abordagem tem os seus próprios pontos fortes e adapta-se a cenários distintos. Abaixo encontra soluções passo a passo para mover uma linha inteira para o fim da sua folha de cálculo ativa com base num valor específico de uma célula.


Mover Linha inteira para o fim de Planilha Atual com base no valor da célula através de código VBA

Suponha que tem uma tabela em que a coluna C contém um estado, como «Done», e pretende que qualquer linha com «Done» nessa coluna seja imediatamente movida para o fim do seu intervalo de dados. Esta solução VBA é especialmente útil se desejar um processo repetível e semi-automatizado, capaz de responder a alterações dinâmicas nos dados sem recorrer à ordenação manual.

mover toda a linha para o fundo da folha ativa com base no valor da célula

1. Prima simultaneamente Alt + F11 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 Linha inteira para o fim de Planilha Atual 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 referenciado é «Done». Pode alterar este valor no código para corresponder ao termo que pretende utilizar como gatilho para mover a linha (por exemplo, pode substituí-lo por «Completed» ou qualquer outro estado adequado ao seu fluxo de trabalho). Certifique-se de que o valor corresponde exatamente — incluindo maiúsculas, minúsculas e espaços — ou, se necessário, ajuste o código para uma correspondência insensível a maiúsculas e minúsculas.

3. Prima a tecla F5 ou clique no botão Executar. Na caixa de diálogo Kutools para Excel que surge, selecione o intervalo da coluna onde o valor-alvo possa aparecer e, em seguida, clique no botão OK.

código vba para selecionar o intervalo de dados

Após a confirmação, o código procurará automaticamente as linhas com o valor «Done» na coluna selecionada e moverá essas linhas para o fim do seu intervalo de dados. Esta reorganização ocorre instantaneamente, poupando-lhe o tempo gasto com ordenações manuais ou ao arrastar linhas.

 toda a linha que contém o valor específico é movida para o fundo do intervalo de dados

Dicas:

  • Se tiver cabeçalhos, certifique-se de não os incluir na sua seleção quando solicitado, para evitar mover a linha do cabeçalho.
  • Este script VBA aplica-se apenas à folha de cálculo atualmente ativa. Caso precise de realizar esta operação em várias folhas, repita o processo em cada uma delas.
  • Se os seus dados incluírem fórmulas ou células ligadas, mover linhas pode alterar as referências. Verifique atentamente a sua folha após executar a macro para garantir a integridade dos dados.

Este método VBA destaca-se em situações que exigem o processamento frequente de um elevado número de linhas, especialmente quando a ordenação manual se torna ineficiente. Contudo, se precisar de uma solução sem macros ou preferir trabalhar diretamente com fórmulas e ferramentas nativas do Excel, considere a abordagem seguinte.

uma captura de ecrã de kutools for excel ai

Desbloqueie a Magia do Excel com KUTOOLS AI

  • Execução Inteligente: Realize operações em células, analise dados e crie gráficos — tudo impulsionado por comandos simples.
  • fórmulas personalizadas: Crie fórmulas personalizadas para simplificar os seus fluxos de trabalho.
  • Programação VBA: Escreva e implemente código VBA com facilidade.
  • Interpretação de Fórmulas: Compreenda facilmente fórmulas complexas.
  • Tradução de Texto: Elimine barreiras linguísticas nas suas folhas de cálculo.
Potencie as capacidades do seu Excel com ferramentas alimentadas por IA.Descarregue Agorae experimente uma eficiência como nunca antes!

Mover Linha inteira para o fim utilizando fórmulas do Excel e ordenação

Para utilizadores que prefiram não utilizar macros ou que procurem uma abordagem mais transparente e baseada em fórmulas para gerir os seus dados, é possível alcançar o mesmo efeito recorrendo a colunas auxiliares e à funcionalidade integrada de ordenação do Excel. Este método revela-se particularmente eficaz em ambientes colaborativos ou em ficheiros destinados a ser partilhados com outros utilizadores que tenham as definições de segurança das macros ativadas.

1. Insira uma nova coluna auxiliar à direita ou à esquerda dos seus dados existentes. Por exemplo, se os cabeçalhos dos seus dados estiverem na linha 1, os valores começarem na linha 2 e o estado estiver na coluna C, insira uma nova coluna D e dê-lhe o nome «SortKey» ou algo semelhante.

2. Na primeira célula da coluna auxiliar (excluindo o cabeçalho, por exemplo, D2), introduza a seguinte fórmula:

=IF(C2="Done",1,0)

Esta fórmula atribui 1 às linhas em que a coluna C está marcada como «Done» e 0 a todas as restantes.

3. Prima Enter para confirmar a fórmula e, em seguida, copie-a por todas as linhas dos seus dados. Basta arrastar a alça de preenchimento de D2 até à última linha dos seus dados ou clicar duas vezes na alça de preenchimento para preenchimento automático, caso a coluna adjacente esteja preenchida.

4. Selecione qualquer célula no seu intervalo de dados e, no Friso do Excel, aceda ao separador Dados e clique em Ordenar.

5. Na caixa de diálogo Ordenar, selecione a coluna auxiliar («SortKey») no menu pendente «Ordenar por» e escolha a ordem Do menor para o maior. Assim, todas as linhas com «Done» (marcadas com 1) permanecerão no fim, enquanto as restantes (marcadas com 0) ficarão no topo.

6. Clique em OK para aplicar a ordenação. Os seus dados serão agora reorganizados de modo que todas as entradas concluídas ou «Done» apareçam no fim da tabela.

Explicação dos parâmetros e dicas:

  • Pode substituir «Done» na fórmula por qualquer outro indicador de estado relevante para a sua folha (por exemplo, «Completed» ou «Inactive»). Certifique-se de que a grafia corresponde exatamente aos seus dados.
  • Se pretender mover linhas com vários valores (por exemplo, tanto «Done» como «Canceled»), utilize uma fórmula como:
    =IF(OR(C2="Done",C2="Canceled"),1,0)
  • Para inverter o efeito (ou seja, colocar as linhas «Done» no topo), ordene por Do maior para o menor ou troque 0 e 1 na fórmula.

Esta abordagem não elimina nem oculta quaisquer linhas, preservando integralmente a estrutura dos seus dados. É perfeita para colaboração com outros utilizadores, assegura compatibilidade entre diferentes versões do Excel e evita problemas potenciais em ficheiros que contenham macros.


Artigos relacionados:

As Melhores Ferramentas de Produtividade para o Office

🤖KUTOOLS AI Assistente: Revolucione o Análise de Dados com base em:Execução Inteligente   |  Gerar Código|  Criar fórmulas personalizadas  |  Analisar Dados e Gerar Gráficos|  Invocar Funções Aprimoradas
Funcionalidades Populares:Localizar, Destacar ou Marcar Duplicatas   |  Excluir linhas em branco   |  Combinar Colunas ou Células sem Perder Dados   |   Arredondamento sem usar fórmula...
Super PROC:VLookup com Múltiplos Critérios  |  VLookup com Múltiplos Valores  |   VLookup em Múltiplas Folhas   |   Correspondência Fuzzy....
Lista Suspensa Avançada:Criar Rapidamente Lista de Seleção   |  Lista de Seleção Dependente   |  Lista de Seleção com Múltipla Escolha....
Gestor de Colunas:Adicionar um Número Específico de Colunas|Mover Colunas|Alternar Estado de Visibilidade de Colunas Ocultas|Comparar Intervalos e Colunas...
Funcionalidades em Destaque:Grade de foco   |  Visualização de Design   |Barra de fórmulas aprimorada   | Gestor de Pastas de Trabalho e Folhas   |  Biblioteca de Recursos(Texto Automático)|  Seleção de Data   |  Consolidar Planilhas  |  Encriptar/Descriptografar Células   | Enviar Emails por Lista   |  Super Filtro   |   Filtro Especial(Filtrar Células com Fonte em Negrito/itálico/rasurado...) ...
Principais Conjuntos de Ferramentas 15:12 Ferramentasde Texto(Adicionar Texto,Excluir Caracteres Específicos, ...)|   50+Tiposde Gráfico(Gráfico de Gantt, ...)|   40+ Fórmulas Práticas(Calcular a idade com base na data de nascimento, ...)|   19 Ferramentasde Inserção(Inserir QR Code,Inserir Imagem a Partir do Caminho, ...)|   12 Ferramentasde Conversão(Converter em Palavras,Conversão de moeda, ...)|   7 Ferramentasde Mesclar e Dividir(Mesclar Linhas Avançado,Dividir Células, ...)|... e muito mais
Utilize o Kutools na sua língua preferida – suporta inglês, espanhol, alemão, francês, chinês e mais 40+ idiomas!

Potencie as suas competências no Excel com Kutools para Excel e experimente uma eficiência como nunca antes.Kutools para Excel Oferece mais de 300 funcionalidades avançadas para impulsionar a produtividade e Economizar Tempo.Clique aqui para obter a funcionalidade de que mais precisa...


Office Tab Traz uma interface com separadores para o Office e torna o seu trabalho muito mais fácil

  • Ative a edição e leitura com separadores no Word, Excel, PowerPoint, Publisher, Access, Visio e Project.
  • Abra e crie vários documentos em novos separadores da mesma janela, em vez de em janelas separadas.
  • Aumente a sua produtividade em 50 % e elimine centenas de cliques do rato todos os dias!

Todos os suplementos Kutools — num único instalador.

Kutools for Office reúne suplementos para Excel, Word, Outlook e PowerPoint, além do Office Tab Pro, sendo a solução ideal para equipas que trabalham em várias aplicações do Office.

ExcelWordOutlookTabsPowerPoint
  • Pacote tudo-em-um— suplementos para Excel, Word, Outlook e PowerPoint + Office Tab Pro
  • Um instalador, uma licença— configuração em minutos (pronto para MSI)
  • Funciona melhor em conjunto— produtividade simplificada em todas as aplicações do Office
  • Teste gratuito de 30 dias com todas as funcionalidades— sem registo, sem cartão de crédito
  • Melhor relação qualidade-preço— poupe face à compra individual dos suplementos