Página 1 de 1

[RESOLVIDO] Copiar dados de uma aba para outra VBA

Enviado: 30 Mar 2021 às 10:42
por JuliaMorais
Bom Dia!

Estou desenvolvendo uma planilha onde preciso transferir os dados da aba “Pendente” para a “Concluído” quando o Status estiver como “CONCLUÍDO” ou “RECORRENTE”.

O usuário irá colocar novas linhas na planilha Pendente através da aba de folha de rosto, isso já está ok.
Quando a análise da reclamação for feita, o status passará para Concluído ou Recorrente (manual) e deve ser movido para a aba “Concluído”. Além disso, a linha que esse reclamação estava na planilha “Pendente” deve ser excluída
Como o cadastro de dados é contínuo, os dados que passarem para a aba “Concluída” devem ser acrescentados um abaixo do outro, sem serem substituídos.
Pensei em colocar um botão que executasse a macro de passar as informações e excluir as linhas que já foram copiadas.
Alguém pode me auxiliar com o código? O que eu tentei não funciona de jeito nenhum
Código: Selecionar todos
Sub copiarteste()

Dim ultimaLinhaPlanC As Long
Dim ultimaLinhaPlanP As Long
Dim j As Long


Application.ScreenUpdating = False


ultimaLinhaPlanP = ThisWorkbook.Worksheets("Pendente").Cells(Rows.Count, 1).End(xlUp).Row

For j = 5 To ultimaLinhaPlanP

If ThisWorkbook.Worksheets("Pendente").Cells(j, 11).Value = "CONCLUÍDO" Then
    
    Range("Aj:Kj").Copy
    
  
    ultimaLinhaPlanC = ThisWorkbook.Worksheets("Concluído").Cells(Rows.Count, 1).End(xlUp).Row
    
    ThisWorkbook.Worksheets("Concluído").Range("A" & ultimaLinhaPlanC + 5).PasteSpecial xlValues
    
End If

Next j

Application.CutCopyMode = False
Application.ScreenUpdating = True

End Sub
Quando rodo está dando o problema em colar... Nesse código não implementei a função de apagar as linhas da planilha Pendente.
Exemplo para Código.xlsm

Re: Copiar dados de uma aba para outra VBA

Enviado: 01 Abr 2021 às 11:07
por Foxtri
Bom dia.
Veja se como foi feito, atende a sua necessidade.
A macro é ativada com duplo click nas linhas da coluna "K".
O codigo pode ser alterado para um botão,fazendo as devidas alterações.
Até
Foxtri

Re: Copiar dados de uma aba para outra VBA

Enviado: 01 Abr 2021 às 11:55
por JCabral
@Foxtri,

Julgo que a sua solução precisa de uns ajustes, nomeadamente se Target.Value <> "CONCLUIDO" Or Target.Value <> "CONCLUÍDO" vai ter que sair da Subrotina, e acresce que se Target.Value = "RECORRENTE" ela tb deve copiar para Pendente e apagar a linha, acho que é isto que eu percebi da dúvida da Julia

Re: Copiar dados de uma aba para outra VBA

Enviado: 01 Abr 2021 às 12:26
por Foxtri
Boa tarde.
Prezada Julia
Com relação ao item "RECORRENTE" ,conforme lembrado pelo amigo "JCabral" , basta substituir conforme abaixo.
If Target.Value = "CONCLUIDO" Or Target.Value = "CONCLUÍDO" Or Target.Value = "RECORRENTE" Then
Caso tenha mais duvidas ou queira alterar o modo de chamar a macro, fique a vontade para solicitar.
Até
Foxtri

Re: Copiar dados de uma aba para outra VBA

Enviado: 01 Abr 2021 às 13:50
por JuliaMorais
@Foxtri, Muito obrigada pelo código! É exatamente o que eu precisava! Fiz algumas alterações conforme minha necessidade, mas funcionou perfeitamente!! Obrigada!

@JCabral, Obrigada pela observação, alterei essa parte no código e funcionou perfeitamente!