Macro - Mover linha para outra planilha

por João Henrique

Atendendo a um leitor aqui do Planilhas Excel, criei uma macro para mover uma linha de uma planilha para outra. A idéia é clicar em uma célula qualquer na linha que deverá ser movida, e em seguida executar a macro. Ao executar a macro, a linha será removida da planilha inicial para uma outra planilha.

Caso você ainda não saiba como criar macros, veja Como Programar no Excel e Como Inserir uma Macro no Excel.

Segue a macro:


Sub moverLinha()
   'Macro de planilhasexcel.com
   Dim linhaOriginal, planilhaOriginal
   linhaOriginal = ActiveCell.Row
   planilhaOriginal = ActiveSheet.Name
   
   Rows(linhaOriginal).Cut
   Sheets("planilhaAlvo").Select
   Range("A65536").End(xlUp).Offset(1, 0).Select
   ActiveSheet.Paste
   
   Sheets(planilhaOriginal).Select
   Rows(linhaOriginal).Delete
End Sub



Importante: Você precisa alterar onde tem escrito "planilhaAlvo" para o nome da planilha para a qual a linha será movida. Por exemplo, se for para Plan2, ficará assim: Sheets("Plan2").Select

Importante-2: Para que a macro funcione corretamente, é preciso que a primeira célula de cada linha não seja em branco.

Importante-3: Antes de usar qualquer macro, é recomendável testar bem para saber se ela está funcionando conforme esperado

Como usar a macro

Há diferentes formas de executar a macro, veja em como executar uma macro, ou então crie um botão na sua planilha.

Explicando a macro

O que a macro faz é selecionar a linha da célula que foi selecionada, recortar (cut), ir para a planilha alvo e colar (paste). A linha Range("A65536").End(xlUp).Offset(1, 0).Select é um truque para ir para a primeira linha em branco da planilha.

Ao terminar de recortar e colar, eu queria voltar para a planilha original e excluir a linha que foi recortada. Para isso, foi preciso criar as variáveis linhaOriginal e planilhaOriginal.

Gostou deste artigo? Então compartilhe com seus amigos e assine para receber mais dicas de Excel por e-mail.

Veja também: