Skip to main content

Kutools para Office — Uma Suíte. Cinco Ferramentas. Aumente sua Produtividade.

Como comparar valores separados por vírgula em duas células e retornar valores duplicados ou únicos no Excel?

Author Siluvia Last modified

Como mostrado na captura de tela abaixo, existem duas colunas - Coluna1 e Coluna2, cada célula na coluna contém números separados por vírgula. Para comparar os números separados por vírgula na Coluna1 com o conteúdo da célula na mesma linha da Coluna2 e retornar todos os valores duplicados ou únicos, o que você poderia fazer?

Este tutorial fornece dois métodos para ajudá-lo a realizar essa tarefa.

compare comma separated values in two cells


Comparar valores separados por vírgula em duas células e retornar valores duplicados ou únicos com fórmulas

Esta seção fornece duas fórmulas para ajudar a comparar os valores separados por vírgula em duas células e retornar os valores duplicados ou únicos entre elas.

Observação: As fórmulas a seguir funcionam apenas no Excel para 365. Se você estiver usando outras versões do Excel, tente usar o método VBA abaixo.

Tomando as duas colunas acima como exemplo, para comparar os números separados por vírgula na Coluna1 com os números separados por vírgula na mesma linha da Coluna2 e retornar valores duplicados ou únicos, proceda da seguinte forma.

sample data

Retornar valores duplicados

1. Selecione uma célula para exibir os números duplicados entre as duas células especificadas com números separados por vírgula; neste caso, seleciono a célula D2, depois insira a fórmula abaixo e pressione a tecla Enter. Selecione a célula da fórmula e arraste sua Alça de Preenchimento Automático para baixo para obter os números duplicados entre as células nas outras linhas.

=LET(x, TRANSPOSE(TEXTSPLIT(TEXTJOIN(", ",TRUE,A2:B2), ", ")),y,UNIQUE(x),z,UNIQUE(x,,1), TEXTJOIN(", ",TRUE,IF(ISERROR(MATCH(y,z,0)),y, "")))

 compare to return duplicate values

Retornar valores únicos

Para retornar os números únicos entre as duas células especificadas com números separados por vírgula na mesma linha, a seguinte fórmula pode ajudar.

1. Selecione uma célula para exibir os números únicos; neste caso, seleciono a célula E2, depois insira a fórmula abaixo e pressione a tecla Enter. Selecione a célula da fórmula e arraste sua Alça de Preenchimento Automático para baixo para obter os números únicos entre as células nas outras linhas.

=TEXTJOIN(", ",TRUE,UNIQUE(TRANSPOSE(TEXTSPLIT(TEXTJOIN(", ",TRUE,A2:B2), ", ")),,1))

compare to return unique values

Notas:

1) As duas fórmulas acima só podem ser aplicadas no Excel para 365. Se você estiver usando uma versão do Excel diferente do Excel para 365, tente usar o método VBA a seguir.
2) As células a serem comparadas devem estar adjacentes umas às outras na mesma linha ou coluna.
a screenshot of kutools for excel ai

Desbloqueie a Magia do Excel com o Kutools AI

  • Execução Inteligente: Realize operações de células, analise dados e crie gráficos — tudo impulsionado por comandos simples.
  • Fórmulas Personalizadas: Gere fórmulas sob medida para otimizar seus fluxos de trabalho.
  • Codificação VBA: Escreva e implemente código VBA sem esforço.
  • Interpretação de Fórmulas: Compreenda fórmulas complexas com facilidade.
  • Tradução de Texto: Supere barreiras linguísticas dentro de suas planilhas.
Potencialize suas capacidades no Excel com ferramentas alimentadas por IA. Baixe Agora e experimente uma eficiência como nunca antes!

Comparar duas colunas com valores separados por vírgula e retornar valores duplicados ou únicos com VBA

A função definida pelo usuário fornecida nesta seção ajuda a comparar os valores separados por vírgula em duas células especificadas e retornar os valores duplicados ou únicos entre elas. Proceda da seguinte forma.

Tomando o mesmo exemplo acima, para comparar os números separados por vírgula na Coluna1 com os números separados por vírgula na mesma linha da Coluna2 e retornar valores duplicados ou únicos, experimente a função definida pelo usuário nesta seção.

 sample data

1. Na pasta de trabalho aberta, pressione as teclas Alt + F11 para abrir a janela Microsoft Visual Basic for Applications.

2. Na janela Microsoft Visual Basic for Applications, clique em Inserir > Módulo e copie o seguinte código VBA na janela Módulo (Código).

 copy anf paste the code into the module

Código VBA: Comparar valores separados por vírgula em duas células e retornar valores duplicados/únicos

Private Function COMPARE(Rng1, Rng2 As Range, Op As Boolean)
'Updated by Extendoffice 20221019
    Dim R1Arr As Variant
    Dim R2Arr As Variant
    Dim Ans1 As String
    Dim Ans2 As String
    Dim Separator As String
    Dim d1 As New Dictionary
    Dim d2 As New Dictionary
    Dim d3 As New Dictionary
    Application.Volatile

    Separator = ", "
    
    R1Arr = Split(Rng1.Value, Separator)
    R2Arr = Split(Rng2.Value, Separator)
    
    Ans1 = ""
    Ans2 = ""
    
    For Each ch In R2Arr
        If Not d2.Exists(ch) Then
            d2.Add ch, "1"
        End If
    Next
    
    If Op Then
        For Each ch In R1Arr
            If d2.Exists(ch) Then
                If Not d3.Exists(ch) Then
                    d3.Add ch, "1"
                    Ans1 = Ans1 & ch & Separator
                End If
            End If
        Next
        If Ans1 <> "" Then
            Ans1 = Mid(Ans1, 1, Len(Ans1) - Len(Separator))
        End If
        COMPARE = Ans1
    Else
        For Each ch In R1Arr
            If Not d1.Exists(ch) Then
                d1.Add ch, "1"
            End If
        Next
        
        For Each ch In R1Arr
            If Not d2.Exists(ch) Then
                If Not d3.Exists(ch) Then
                    d3.Add ch, "1"
                    Ans2 = Ans2 & ch & Separator
                End If
            End If
        Next
        For Each ch In R2Arr
            If Not d1.Exists(ch) Then
                If Not d3.Exists(ch) Then
                    d3.Add ch, "1"
                    Ans2 = Ans2 & ch & Separator
                End If
            End If
        Next
        If Ans2 <> "" Then
            Ans2 = Mid(Ans2, 1, Len(Ans2) - Len(Separator))
        End If
        COMPARE = Ans2
    End If

End Function

3. Após colar o código na janela Módulo (Código), vá em Ferramentas > Referências para abrir a janela Referências – VBAProject, marque a caixa Microsoft Scripting Runtime e clique no botão OK.

 click Tools > References and check Microsoft Scripting Runtime box

4. Pressione as teclas Alt + Q para fechar a janela Microsoft Visual Basic for Applications.

5. Agora você precisa aplicar duas funções separadamente para retornar os valores duplicados e únicos de duas células com valores separados por vírgula.

Retornar valor duplicado

Selecione uma célula para exibir os números duplicados; neste exemplo, seleciono a célula D2, depois insira a fórmula abaixo e pressione a tecla Enter para obter os números duplicados entre as células A2 e B2.

Selecione a célula da fórmula e arraste sua Alça de Preenchimento Automático para baixo para obter os números duplicados entre as células nas outras linhas.

=COMPARE(A2,B2,TRUE)

 use formula to return duplicate value

Retornar valores únicos

Selecione uma célula para exibir os números únicos; neste exemplo, seleciono a célula E2, depois insira a fórmula abaixo e pressione a tecla Enter para obter os números únicos entre as células A2 e B2.

Selecione a célula da fórmula e arraste sua Alça de Preenchimento Automático para baixo para obter os números únicos entre as células nas outras linhas.

=COMPARE(A2,B2,FALSE)

 use formula to return unique value

Melhores Ferramentas de Produtividade para Office

🤖 Kutools AI Aide: Revolucione a análise de dados com: Execução Inteligente   |  Gerar Código  |  Criar Fórmulas Personalizadas  |  Analisar Dados e Gerar Gráficos  |  Chamar Funções Aprimoradas
Recursos Populares: Localizar, Destacar ou Marcar Duplicatas   |  Excluir Linhas em Branco   |  Consolidar Colunas ou Células sem Perder Dados   |   Arredondar...
Super PROC: Procura por múltiplos critérios    Procura por múltiplos valores  |   Procura em várias planilhas   |   Correspondência Fuzzy...
Lista Suspensa Avançada: Crie rapidamente Lista suspensa  |  Lista suspensa dependente  |  Lista suspensa com múltipla seleção ...
Gerenciador de Colunas: Adicionar número específico de colunas  | Mover Colunas  | Alternar status de visibilidade de Colunas ocultas |  Comparar Intervalos & Colunas...
Recursos em Destaque: Grade de foco   |  Visualização de Design  |  Barra de fórmulas aprimorada    Gerenciador de Pasta de trabalho & Planilha   |  Biblioteca de AutoTexto (Auto Text)   |  Selecionador de Data   |  Mesclar Dados   |  Criptografar/Descriptografar Células    Enviar Email por Lista   |  Super Filtro   |   Filtro Especial (filtrar negrito/itálico/tachado...) ...
Os 15 Principais Conjuntos de Ferramentas: 12 Ferramentas de Texto (Adicionar Texto, Excluir Caracteres Específicos, ...)  | 50+ Tipos de Gráficos (Gráfico de Gantt, ...)  | 40+ Fórmulas Práticas (Calcular a idade com base na data de nascimento, ...)  | 19 Ferramentas de Inserção (Inserir Código QR, Inserir Imagem pelo Caminho, ...)  | 12 Ferramentas de Conversão (Converter em Palavras, Conversão de Moeda, ...)  | 7 Ferramentas de Mesclar & Dividir (Mesclar Linhas Avançado, Dividir Células, ...) | ...e muito mais
Use o Kutools no idioma de sua preferência – compatível com Inglês, Espanhol, Alemão, Francês, Chinês e mais de40 idiomas!

Impulsione suas habilidades no Excel com Kutools para Excel e experimente uma eficiência incomparável. Kutools para Excel oferece mais de300 recursos avançados para aumentar a produtividade e economizar tempo.  Clique aqui para acessar o recurso que você mais precisa...


Office Tab traz interface com abas para o Office e facilita muito seu trabalho

  • Habilite edição e leitura por abas no Word, Excel, PowerPoint, Publisher, Access, Visio e Project.
  • Abra e crie múltiplos documentos em novas abas de uma mesma janela, em vez de em novas janelas.
  • Aumente sua produtividade em50% e economize centenas de cliques todos os dias!

Todos os complementos Kutools. Um instalador

O pacote Kutools for Office reúne complementos para Excel, Word, Outlook & PowerPoint, além do Office Tab Pro, sendo ideal para equipes que trabalham em vários aplicativos do Office.

Excel Word Outlook Tabs PowerPoint
  • Pacote tudo-em-um — complementos para Excel, Word, Outlook & PowerPoint + Office Tab Pro
  • Um instalador, uma licença — configuração em minutos (pronto para MSI)
  • Trabalhe melhor em conjunto — produtividade otimizada entre os aplicativos do Office
  • Avaliação completa por30 dias — sem registro e sem cartão de crédito
  • Melhor custo-benefício — economize comparado à compra individual de add-ins