Notifications
Clear all

Ajuda com VBA - comparação planilhas

4 Posts
3 Usuários
0 Reactions
895 Visualizações
 pmlv
(@pmlv)
Posts: 0
New Member
Topic starter
 

Olá,

Esta é a minha primeira postagem aqui no forum e espero que me possam ajudar.

Eu tenho duas planilhas onde são registadas activiades. A planilha1 é a listagem actual e a planilha2 é a nova listagem.

O que eu pretendo é comparar a informação da planilha2 com a planilha1, Se na planilha2 a informação for igual à planilha1, não faz nada, se for diferente, pretendo que copie os valores diferentes da planilha 2, para a ultima linha da planilha1.

Planilha1
Atividade Descrição Operação realizado?
123 Cortar 10 x
456 Maquinar 10 x
789 Cortar 10 x
789 Maquinar 15

Planilha2
Atividade Descrição Operação realizado?
123 Cortar 10
456 Maquinar 10
658 Cortar 10

Como podem ver nas tableas eu queria que fosse copiado para a planilha1 a informação (658 Cortar 10) que é diferente. As outras duas linhas são iguais em ambas as planilhas mas neste caso como na planilha1 está com um X na coluna realizado, não queria que copiasse.

Agradecia ajuda, porque tenho urgencia e são muitos artigos que tenho de verificar um a um.

Obrigado,

 
Postado : 10/11/2015 4:50 am
(@nelson-s)
Posts: 0
New Member
 

Veja se esta rotina ajuda...

 
Postado : 10/11/2015 12:36 pm
(@fernandofernandes)
Posts: 43750
Illustrious Member
 

Boa tarde!!

Não testado!!

Sub AleVBA_18070()
    Dim iLast As Long
    Dim iCounter As Integer
    iLast = Worksheets("Plan2").Range("A" & Application.Rows.Count).End(xlUp).Row
    Dim rng As Range
     
    For iCounter = 2 To iLast
        Set rng = Worksheets("Plan1").Range("A:A").Find(Worksheets("Plan2").Range("A" & iCounter).Value)
        If rng Is Nothing Then
            Worksheets("Plan2").Rows(iCounter & ":" & iCounter).Copy
            Worksheets("Plan1").Range("A" & Worksheets("Plan1").Range("A" & Application.Rows.Count).End(xlUp).Row + 1).PasteSpecial xlPasteAll
        End If
         
    Next iCounter
End Sub

Att

 
Postado : 10/11/2015 2:12 pm
 pmlv
(@pmlv)
Posts: 0
New Member
Topic starter
 

Ambos os exemplos funcionaram.

Obrigado a todos.

 
Postado : 12/11/2015 5:49 am