Remover Duplicadas na Célula Excel

Neste artigo você aprenderá como remover duplicadas na célula do Excel.

Nela você aprenderá como remover duplicadas de células com fórmulas e também com uma função VBA passo-a-passo.

https://youtu.be/TkJ6GTeqVAI

No nosso exemplo temos uma tabela com itens duplicados no texto, como podemos ver na coluna Valor.

Uma das formas de resolver isso é usando o Excel 365 aonde iremos remover as palavras duplicadas.

Para isso usamos a função abaixo:

=UNIRTEXTO(” “;;ÚNICO(DIVIDIRTEXTO(Tabela1[@Valor];;” “)))

A função DIVIDIRTEXTO divide o texto com a célula da tabela Valor.

Nela estamos dividindo o valor do texto da célula.

Em seguida usamos a função ÚNICO para remover todos os duplicados da matriz gerada pela função DIVIDIRTEXTO.

E por fim a função UNIRTEXTO realiza a união dos valores usando o UNIRTEXTO e passando como parâmetro espaço para dividir as palavras.

Para ver mais sobre como dividir texto no Excel você pode ver este artigo: https://www.guiadoexcel.com.br/funcao-dividirtexto-excel/.

Remover Palavras Duplicadas Excel VBA

Outra forma de fazer isso é com VBA, em versões anteriores do Excel.

Primeiro precisa habilitar a guia desenvolvedor.

  1. Abra o Excel
  2. Clique em “Arquivo” no menu superior
  3. Selecione “Opções”
  4. Clique em “Personalizar Faixa de Opções”
  5. Na janela “Opções de Personalização da Faixa de Opções”, selecione a guia “Comandos disponíveis”
  6. Clique na seta para baixo ao lado de “Desenvolvedor” e selecione “Visual Basic”
  7. Clique em “OK”

Nela clique no botão Visual Basic, será aberto o VBA e você deve inserir este código da função.

Coloque este código:

'Função que identifica se há repetidos
Public Function lfRepetidosB(ByVal lRange As Range, ByVal lSeparador As String) As Variant

    'Esta instrução faz com que ao tentar inserir um valor duplicado na coleção ele pule para o próximo registro
    On Error Resume Next

    'Recalcula a função automaticamente
    Application.Volatile

    Dim lCel     As Range
    Dim lValores As Variant
    Dim lValor   As Variant
    Dim lUnicos  As New Collection
    Dim i        As Long

    i = 0

    'A função split faz com que os valores sejam separados a partir de um determinado separador, no caso do problema apresentado o separador é
    'espaço, " "
    lValores = Split(lRange, lSeparador)

    'O comando For Each varre a coleção de valores, podendo ser utilizado em Variant ou em Collection
    For Each lValor In lValores
        lUnicos.Add lValores(i), CStr(lValores(i))
        i = i + 1
    Next lValor

    On Error GoTo 0

    i = 1

    'Junta as informações e retorna na função
    While i <= lUnicos.Count
        lfRepetidosB = lfRepetidosB + " " + lUnicos.Item(i)
        i = i + 1
    Wend
End Function

Depois disso basta usarmos a função diretamente no Excel.

Agora no Excel pode usar a função criada no VBA.

=lfRepetidosB(Tabela1[@Valor];” “)

Use esta função acima, passando pra ela qual o nome do campo e coloque espaço como delimitador no segundo campo.

No vídeo ao topo veja como fazer destas duas formas para remover palavras duplicadas no Excel

Download Planilha Remover Duplicadas na Célula Excel

Realize o download da planilha de cálculo de idade no Excel neste botão abaixo. Basta se inscrever na nossa newsletter gratuita para o download automático.

Baixe a planilha


Marcos Rieper

Pai, marido, professor e consultor em Excel.

Obrigado por ler este artigo, este blog foi criado para difundir o conhecimento em Excel à todos.

Divulgamos novos artigos nas redes sociais, basta clicar nos ícones abaixo.

Excel não precisa ser complicado

Assine nossa newsletter e receba dicas práticas para dominar o excel