Página 1 de 1
Macro para apagar duplicadas
Enviado: 10 Set 2018 às 13:49
por Diego100ges
Pessoal boa tarde!
Estou com uma certa dificuldade com duplicadas, estou com uma planilha grande aprox. 5000 linhas e tem alguns valores duplicados, mas quando vou remover duplicadas ele apaga apenas as células duplicadas e não toda a linha, dessa forma acaba misturando os dados, alguma ideia para uma macro onde eu consiga apagar a linha toda que contem 1 valor duplicado?
Desde já, muito obrigado!
Segue um exemplo da planilha.
Re: Macro para apagar duplicadas
Enviado: 10 Set 2018 às 14:08
por gfranco
Boa tarde.
Se é pra levar em conta apenas o nome (que é o que eu entendi que você quer fazer) basta selecionar todo o intervalo (inclusive cabeçalhos) e utilizar a função "Remover duplicatas" deixando marcada a opção "Meus dados contém cabeçalhos" e indicar apenas a coluna "Nome" para a remoção de duplicatas.
Macro para apagar duplicadas
Enviado: 10 Set 2018 às 14:26
por ExcelFlex
Diego, quais são as colunas que você deseja manter? Na planilha que você enviou existem duplicidades na coluna A, mas quais são as colunas que você quer manter além dessa que você marcou?
Sugiro que exclua todas as colunas que são desnecessárias e depois faça o procedimento de remover duplicatas como o @gfranco explicou.
Macro para apagar duplicadas
Enviado: 10 Set 2018 às 14:31
por Diego100ges
Como os dados que se repetem são apenas na coluna A, eu preciso que apague toda a linha que contem 1 valor repetido na coluna A, se eu usar a ferramenta de apagar duplicatas apenas na coluna A, ele vai apagar apenas a célula repetida e não a linha toda, e ai ele vai subir os valores das colunas inferiores, e isso não pode acontecer, preciso que ao encontrar um valor duplicado na coluna A ele exclua toda a linha e não apenas a célula duplicada.
Macro para apagar duplicadas
Enviado: 10 Set 2018 às 14:39
por Afonso01Serri
Boa tarde.
Diego, veja se esse código resolve o seu problema:
Sub Excluir_Duplicadas()
Dim ED As Worksheet
Dim Teste As String
Set ED = Application.Worksheets("Planilha1")
Application.ScreenUpdating = False
ultima = Range("A10000").End(xlUp).Row
For i = ultima To 1 Step -1
Teste = Cells(i, 1).Value
For j = ultima To 1 Step -1
If Teste = Cells(j, 1).Value And i <> j Then
ED.Rows(j).Delete
End If
Next j
Next i
End Sub
Macro para apagar duplicadas
Enviado: 10 Set 2018 às 14:50
por Diego100ges
Funcionou perfeitamente! Muito obrigado!
Gostaria de entender o código seria possível me explicar como fez funcionar?