Como verificar se existe valores duplicados no Excel
Neste artigo mostrarei uma forma interessante de como achar Dados Duplicados em uma sequência de células, porém, não é o único, mas ajuda. Veja na Figura 1 como será feito.
- Na Coluna B coloquei algumas datas inclusive duplicadas;
- Na Coluna C foram simulados alguns nomes de clientes;
- Na Coluna D a Data e o Nome de cada cliente foram concatenados (unidas) com a Função:
. Onde & serve para concatenar (unir); e
=B2&C2 - Na Coluna F foi feito a Função do Status, para saber se há duplicação, veja a Função: .
=SE(CONT.SE($D$2:D2;D2)>1;"Duplicado";"Único")
Validação de Dados
Na parte anterior foi visto uma forma de se encontrar Duplicados pela função, porém, nesta será pela Validação de Dados, veja na Figura 2.
Assim que a pessoa digitar na célula que está com as bordas vermelhas, aparecerá uma mensagem dizendo que a o Pedido já existe, para isso antes de qualquer coisa selecione todas as células da seqüência neste caso da célula B3:B11, Clique no Menu Dados - Opção Validação.
Assim que abrir a Caixa de Validação de Dados, em Permitir escolha Personalizado e em Fórmula digite a seguinte fórmula:
= CONT.SE(B$3:B$11; B3) = 1Explicação da Função: (Essa função quis dizer que caso o valor que for digitado da B3 para baixo for igual a 1, isso quer dizer caso já exista, não será possível inserir o valor.)
Depois de ter configurado que os valores não podem ser Duplicados, vamos configurar uma Mensagem de Erro, para isso veja a Figura 3.
Veja que para configurar uma Mensagem de erro, deve-se clicar a Guia - Alerta de Erro, depois digite o Título e a Mensagem de Erro como achar melhor, e clique em OK.
Pronto, Validação de Dados configurada. Veja agora na Planilha presente na Figura 4.
Este é mais um exemplo de como impedir que digitem alguma informação Duplicada, caso tenha alguma outra forma, podem me enviar.
Formatação Condicional
Anteriormente foram vistos outras duas formas de se encontrar Duplicados pela função, porém, aqui será pela Formatação Condicional, como vemos na Figura 5.
Assim que a pessoa digitar na célula que está com as bordas vermelhas e pressionar a tecla ENTER, o valor ficará com a cor Laranja indicando que o já existe, para isso antes de qualquer coisa selecione todas as células da seqüência neste caso da célula B3:B11, Clique no Menu Formatar - Opção Formatação Condicional, como mostra a Figura 6.
Assim que abrir a Caixa de Formatação Condicional, configure conforme a figura acima, em Condição 1 a opção A Fórmula é e digite ao lado a seguinte Fórmula:
=CONT.SE($B$3:$B$11; B3) = 1Explicação da Fórmula: (Essa função quis dizer que caso o valor que for digitado da B3 para baixo for igual a 1, isso quer dizer caso já exista, não será possível inserir o valor.)
Depois de ter configurado que os valores não podem ser Duplicados, vamos fazer os testes. Clique no Botão OK e pronto, a tabela já pode ser utilizada e na Figura 11 você confere como fica o resultado caso seja Repetido.
Este foi mais um exemplo de como Impedir a Digitação de Dados Duplicados, caso tenham alguma outra forma, podem me enviar.
VBA
Esta é a quarta (e última) parte desta série, nas partes anteriores foram vistos outras duas formas de se encontrar Duplicados pela função, porém, neste será por Programação VBA, conforme vemos na Figura 8.
Em uma nova planilha, abra o editor Microsoft Visual Basic (Aperte Alt + F11).
No lado esquerdo da janela que se abrirá, clique duas vezes na planilha onde você deseja aplicar o código (neste exemplo estarei aplicando na Plan3). Observe a Figura 9.
Assim que clicar duas vez na Planilha desejada, copie o código abaixo na área branca a direita como na figura acima:
Private Sub Worksheet_Change(ByVal Target As Excel.Range)
On Error Resume Next
Dim nLinComp As Integer, nLinFim As Integer " => declara nLinha como Inteiro
Dim Resp As String
nLinFim = 3 "=> define qual será a linha onde inicia-se os dados para achar o final da lista
Do While Not IsEmpty(Cells(nLinFim, 2)) "=> irá comparar enquanto a célula não estiver vazia
nLinFim = nLinFim + 1 "=> adiciona uma linha para baixo
Loop
nLinComp = 3 "=> define qual será a linha que inicia-se os dados para a comparação dos dados
Do While nLinComp <= nLinFim - 2 "=> irá fazer enquanto tiver Valor digitado
If Cells(nLinFim - 1, 2).Value = Cells(nLinComp, 2).Value Then "=> se o último Valor digitado for repetido, irá para o processo abaixo
Cells(nLinFim - 1, 2).Activate "=> ativa a célula do Valor digitado incorretamente.
Resp = MsgBox("O Valor " & """ & ActiveCell & """ & " já consta na planilha." & _
vbCrLf & vbCrLf & "Este Valor será Excluido !", vbCritical, " Valor !") "=> exibe a mensagem
Cells(nLinFim - 1, 2).ClearContents "=> Exclui o Valor digitado caso seja repetido
Exit Sub
Else
nLinComp = nLinComp + 1 "=> compara o próximo Valor da lista
End If
Loop
Cells(nLinComp + 1, 2).Activate "=> Se não encontrar mais valores repetidos, ativa a célula subsequente
End Sub
Observação: O texto que está em verde, é um texto de comentário, isso é não será executado pela Linguagem VBA, para colocar algum texto como comentário é só colocar o acento Apóstrofe (‘) antes do texto que deseja comentar.
Agora vamos fazer o teste para ver como fica o resultado na planilha. Observe a Figura 10.
Após clicar no Botão OK, o resultado será o mesmo da Figura 11.
O Valor repetido é excluído automaticamente.
Caso alguém tenha uma outra forma de verificar se existem valores duplicados, é só me enviar.
Atualização com Boas Práticas
Em um cenário onde a integridade dos dados é cada vez mais crítica para a tomada de decisões e automatização de processos, garantir que informações duplicadas não comprometam os resultados tornou-se uma prática essencial.
Embora técnicas clássicas, como o uso da função CONT.SE ou validação de dados, ainda sejam úteis e funcionais, as versões mais recentes do Excel e os avanços em automação e integração com outras ferramentas oferecem recursos mais modernos, eficientes e seguros para esse controle.
A adoção de boas práticas e atualizações modernas não apenas facilita a detecção de dados duplicados, mas também aumenta a precisão, a escalabilidade e a segurança do processo de validação.
Nos tópicos a seguir, são detalhadas as principais atualizações recomendadas e suas aplicações práticas para controle de duplicidade, alinhadas às ferramentas mais recentes do Microsoft Excel.
1. Recurso nativo: “Remover Duplicatas”
Acessando o: Menu Dados -> Grupo Ferramentas de Dados -> Remover Duplicatas
Diferente dos outros recursos ou fórmulas a serem definidas, esse método nativo:
- Não exige fórmulas ou programação.
- Interface simples.
- Permite selecionar múltiplas colunas para verificar duplicidade em combinação (ex.: Nome + Data).
Limitação: Remove os valores duplicados diretamente, sem realce ou aviso.
Boas práticas:
- Antes de usar, sempre criar uma cópia da planilha ou utilizar Ctrl + Z para desfazer se necessário.
- Usar quando o objetivo for limpeza de dados em massa.
2. Uso das funções modernas UNIQUE() e FILTER()
Essas funções dinâmicas facilitam o tratamento e análise de duplicidades.
UNIQUE(range)Retorna apenas aos valores únicos.
Exemplo:
=UNIQUE(A2:A100)lista limpa sem duplicados.
FILTER(range, condition)Permite retornar os duplicados:
Exemplo:
=FILTER(A2:A100, COUNTIF(A2:A100, A2:A100) > 1)Vantagens:
- Fórmulas dinâmicas: atualizam automaticamente ao inserir novos dados.
- Sem necessidade de programação ou validação de dados.
Boas práticas:
- Usar como visualização auxiliar para detectar duplicatas antes de agir.
- Ideal para dashboards, análises rápidas e fluxos automatizados.
3. Tabela Dinâmica para contagem de repetições
Passos básicos:
- Selecione sua base de dados.
- Insira uma Tabela Dinâmica (Inserir > Tabela Dinâmica).
- Coloque o campo principal (ex: nome) em “Linhas”.
- Coloque o mesmo campo em “Valores” e configure para contar.
Vantagens:
- Não altera os dados originais.
- Fácil de usar e altamente visual.
Boas práticas:
- Combinar com segmentações e filtros para facilitar navegação.
- Ideal para relatórios e análises gerenciais.
4. Evitar exclusão automática de dados com VBA
No artigo, o código VBA apaga o valor duplicado automaticamente. Isso pode ser perigoso em ambientes reais, por exemplo:
- Apaga dados por erro de digitação do usuário.
- Não permite desfazer facilmente.
Boas práticas:
- Apenas destacar a célula duplicada com cor ou ícone.
- Exibir mensagem e permitir que o usuário decida se deseja excluir.
- Gravar histórico de exclusão em outra aba (log de alterações).
Essas atualizações tornam a detecção e prevenção de duplicatas mais:
- Automatizada,
- Segura,
- Intuitiva,
- e Manutenção.
A escolha da abordagem ideal depende do contexto:
- Limpeza pontual: Remover Duplicatas.
- Análise contínua: UNIQUE(), Tabela Dinâmica.
- Prevenção interativa: Validação de Dados ou VBA com boas práticas.
Comandos em Linguagem Natural com Copilot
O Copilot para Excel, parte da suíte Microsoft 365, é uma ferramenta impulsionada por inteligência artificial que permite aos usuários interagirem com suas planilhas usando comandos em linguagem natural. Isso significa que você pode pedir ao Excel para realizar tarefas complexas simplesmente digitando ou falando o que deseja, sem precisar saber fórmulas avançadas ou macros.
Você escreve uma instrução simples e clara, por exemplo: “Mostre todos os pedidos duplicados com base em nome e data.”
E o Copilot entende o pedido, executa a análise e retorna o resultado esperado, que pode ser uma lista filtrada, um relatório, ou até uma visualização gráfica.
Vantagens do uso do Copilot no Excel
- Acessibilidade: Usuários sem conhecimento avançado em Excel podem manipular dados complexos facilmente.
- Agilidade: Economiza tempo, já que não é necessário escrever fórmulas manuais para tarefas repetitivas.
- Precisão: Minimiza erros que podem ocorrer na criação manual de fórmulas.
- Automatização inteligente: Pode sugerir insights e automações baseadas no contexto dos dados.
Exemplos práticos de comandos em linguagem natural
- “Mostre os clientes que fizeram mais de 3 compras no último mês.”
- “Crie um gráfico de barras com as vendas por região.”
- “Liste os produtos com estoque abaixo de 10 unidades.”
- “Calcule a média das vendas dos últimos 6 meses.”
No caso dos pedidos duplicados
Ao solicitar: “Mostre todos os pedidos duplicados com base em nome e data.”
O Copilot vai identificar linhas onde o nome do cliente e a data do pedido aparecem mais de uma vez, destacando-os ou criando uma tabela filtrada para que você visualize facilmente esses registros.
Links Úteis
- Curso de Xamarin: Primeiros passos: O Xamarin é uma plataforma para desenvolvimento de aplicações móveis dentro da plataforma .NET, utilizando o C#.
- Curso de Lógica de Programação: Neste curso veremos uma introdução a algoritmos, utilizando como linguagem de apoio o Portugol. Para isso, abordaremos assuntos como descrição narrativa, fluxogramas e pseudocódigos, fundamentais para quem está iniciando na programação.
- Curso de HTML5: Neste curso de HTML 5 veremos o que desenvolvimento da linguagem HTML (HyperText Markup Language) ficou parada na versão 4 desde 1999. Durante esse período, a W3C se focou em linguagens como XML (Extensible Markup Language) e SVG (Scalable Vector Graphics - gráficos vetoriais em navegadores).
- Acomo aprender PHP: Neste Guia de Consulta você encontrará todo o conteúdo que precisa para aprender PHP, uma linguagem de programação amplamente utilizada para a construção de aplicações web.
Saiba mais sobre PHP ;)
- Desenvolvendo uma aplicação Multicamadas em Visual Basic .NET: Esse exemplo apresenta uma aplicação para um Disk-Pizza. br>Tem como objetivo explorar o conceito de programação em multicamadas. br>Exploraremos as Camadas: de Dados, intermediária e apresentação.