Este fórum está sendo desativado

Depois de 9 anos, este fórum será desativado. Mas calma.... estamos migrando para uma comunidade no DISCORD. Junte-se a nós.

ENTRAR PARA DISCORD

Tópicos relacionados a códigos VBA, gravação de macros, etc.
  • Avatar do usuário
  • Avatar do usuário
Por Diego100ges
Posts
#36559
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.
Você não está autorizado a ver ou baixar esse anexo.
Avatar do usuário
Por gfranco
Avatar
#36560
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.
Avatar do usuário
Por ExcelFlex
Posts Avatar
#36563
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.
Por Diego100ges
Posts
#36565
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.
Por Afonso01Serri
Posts
#36567
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
Por Diego100ges
Posts
#36568
Funcionou perfeitamente! Muito obrigado!
Gostaria de entender o código seria possível me explicar como fez funcionar?
long long title how many chars? lets see 123 ok more? yes 60

We have created lots of YouTube videos just so you can achieve [...]

Another post test yes yes yes or no, maybe ni? :-/

The best flat phpBB theme around. Period. Fine craftmanship and [...]

Do you need a super MOD? Well here it is. chew on this

All you need is right here. Content tag, SEO, listing, Pizza and spaghetti [...]

Lasagna on me this time ok? I got plenty of cash

this should be fantastic. but what about links,images, bbcodes etc etc? [...]

Estamos migrando para uma comunidade no Discord