Como mover uma linha específica para uma nova folha ao marcar uma caixa de verificação no Excel?
Na utilização diária do Excel, surgem frequentemente cenários em que os utilizadores precisam de mover uma linha para outra folha ou livro de trabalho consoante uma caixa de verificação esteja marcada — como em listas de estado de tarefas, formulários de processamento de encomendas ou listas de verificação de revisão de dados. Ao automatizar este processo, aumenta a eficiência do seu fluxo de trabalho e mantém uma visão clara dos seus dados. Este artigo apresenta várias soluções práticas para mover uma linha específica para uma nova folha assim que uma caixa de verificação for marcada, adaptando-se a diferentes preferências operacionais e necessidades de gestão de dados.
- Mover linha quando uma caixa de verificação estiver marcada com código VBA
- Fórmula do Excel – sinalizar e filtrar linhas para mover
Mover linha quando uma caixa de verificação estiver marcada com código VBA
Se pretender mover automaticamente uma determinada linha para uma folha de cálculo especificada assim que uma caixa de verificação for marcada, o VBA (Visual Basic for Applications) do Excel oferece uma solução altamente personalizável. Este método revela-se especialmente útil para utilizadores que trabalham com grandes conjuntos de dados ou que executam frequentemente esta operação.
1. Abra a folha de cálculo onde precisa de mover linhas com base no estado de uma caixa de verificação. Navegue até Programador > Inserir > Caixa de Verificação (Controlo ActiveX) para inserir uma caixa de verificação na sua folha. Este controlo permite associar ações à caixa de verificação. Veja a captura de ecrã:

2. Clique com o botão direito do rato no separador da folha, na parte inferior da janela do Excel, e escolha Ver Código no menu de contexto para abrir a janela de código correspondente à folha. Veja a captura de ecrã:

3. Na janela do Microsoft Visual Basic for Applications que aparece, copie e cole o seguinte código VBA na janela de código:
Código VBA: mover linha para uma folha de cálculo especificada quando uma caixa de verificação for marcada
Private Sub CheckBox1_Click()
Dim xRg As Range
Dim xAddress As String
On Error Resume Next
If CheckBox1.value Then
xAddress = Application.ActiveWindow.RangeSelection.Address
Set xRg = Application.InputBox("Please select the range row you will move(single cell):", "KuTools For Excel", xAddress, , , , , 8)
If xRg Is Nothing Then Exit Sub
Set xRg = xRg(1).EntireRow
xRg.Copy
ActiveWorkbook.Sheets("Sheet3").Range("A1").PasteSpecial xlPasteAllUsingSourceTheme
xRg.Clear
Application.CutCopyMode = False
End If
End Sub Notas: No código, Sheet3 e A1 indicam que a linha especificada será movida para a primeira linha da Sheet3. Altere-os conforme as suas necessidades. Por exemplo, para mover a linha para Sheet2, começando em B10, basta ajustar esses valores no código.
Tenha cuidado ao editar a macro — alterações incorretas podem causar erros ou movimentos não intencionais de dados. Guarde sempre a sua pasta de trabalho antes de executar um novo código VBA, caso precise reverter as alterações.
4. Após introduzir o código, prima Alt + Q no seu teclado para sair do editor VBA e regressar à sua folha de cálculo do Excel.
5. Antes de utilizar a funcionalidade, certifique-se de que desativa o Modo de Estrutura no separador Programador. Este passo ativa o controlo da caixa de verificação, permitindo-lhe acionar a macro VBA conforme pretendido.

6. Agora, clique na caixa de verificação que adicionou. Aparecerá uma caixa de diálogo Kutools para Excel, solicitando-lhe que selecione a primeira célula da linha ou a linha inteira que pretende mover. Após a seleção, clique em OK. A linha especificada será imediatamente movida para a folha de cálculo designada, tal como definido no seu código VBA. Veja a captura de ecrã:

Fórmula do Excel – sinalizar e filtrar linhas para mover
Uma solução baseada em fórmulas permite identificar rapidamente as linhas que devem ser movidas assim que a respetiva caixa de verificação é marcada. Esta abordagem revela-se especialmente útil em tabelas de introdução de dados onde as caixas de verificação estão associadas a colunas auxiliares. As linhas sinalizadas podem depois ser filtradas e coladas manualmente noutra folha. Este método não requer VBA e é ideal quando não é necessária uma automação rigorosa ou quando a utilização de macros é restrita.
Assumindo que tem caixas de verificação nas células B2 a B100, ligadas às células C2 a C100, e que as suas linhas de dados estão em A2:B100, pode utilizar uma coluna auxiliar (por exemplo, coluna D) com uma fórmula para sinalizar as linhas marcadas:
1. Na célula D2, introduza a seguinte fórmula:
=IF(C2=TRUE, "Move", "") 2. Prima Enter para confirmar a fórmula e, de seguida, copie-a para todas as linhas de dados (por exemplo, de D2 a D100). Pode fazê-lo arrastando a alça de preenchimento ou clicando duas vezes nela, no canto inferior direito da célula.
3. Agora, pode filtrar a coluna D para mostrar apenas «Mover», selecionar as linhas visíveis (filtradas) e copiá-las para a folha de destino com Ctrl+C e Ctrl+V.
Dica: Se as suas caixas de verificação não estiverem ligadas a valores de células, clique com o botão direito em cada uma e defina a propriedade Ligação de Célula, para que marcar ou desmarcar atualize automaticamente uma célula para VERDADEIRO ou FALSO. Assim, a fórmula funcionará exatamente como pretendido.
Vantagens: Não requer macros e funciona em ficheiros partilhados. Desvantagens: São necessários alguns passos manuais para mover as linhas sinalizadas.
Artigos relacionados:
- Como mover uma linha inteira para outra folha com base no valor de uma célula no Excel?
- Como mover uma linha inteira para o final da planilha atual com base no valor de uma célula no Excel?
As Melhores Ferramentas de Produtividade para o Office
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.
- 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