Experimente a seguinte parte do VBA:
Public Sub CleanMeImFilthy
Dim intCounter as Integer
For intCounter = ActiveSheet.UsedRange.Rows.Count to 1 Step -1
If Trim(Lcase(Left(Cells(intCounter,1).Value,14))) = "duplicate key:" Then
Rows(intCounter).Delete
End If
Next
End Sub
Tudo o que o código faz é:
- Começa na parte inferior da coluna A - onde 'bottom' é a última linha que foi usada.
- Verifica se a versão em minúsculas dos primeiros 14 caracteres do texto na célula atual, que foi despojada de espaços, é igual à chave duplicada: '
- Supondo que todas as linhas que você precisa remover contenham isso, exclui a linha
Comecei de baixo e trabalhei como é mais limpo devido a não excluir uma linha, o que significa que a linha abaixo de você é agora você.
Como você postou isso no Stack Overflow originalmente, estou bastante confiante de que você pode adicioná-lo ao Excel. Se não:
- Copie o código daqui
- Pressione ALT + F11 para entrar no Editor do VB
- Clique em Inserir | Módulo na Barra de Menus
- Clique em Editar | Colar (CTRL + V)
- Feche o editor do VB
- Na planilha que contém seus dados sujos, pressione ALT + F8 para obter uma lista de macros disponíveis
- Selecione 'CleanMeImFilthy' e escolha Executar.