Saltar al contenido principal

¿Cómo comparar valores separados por comas en dos celdas y devolver valores duplicados o únicos en Excel?

Como se muestra en la captura de pantalla a continuación, hay dos columnas: Columna 1 y Columna 2, cada celda de la columna contiene números separados por comas. Para comparar los números separados por comas en la Columna 1 con el contenido de las celdas en la misma fila de la Columna 2 y devolver todos los valores duplicados o únicos, ¿qué podría hacer?

Este tutorial proporciona dos métodos para ayudarlo a realizar esta tarea.


Compare valores separados por comas en dos celdas y devuelva valores duplicados o únicos con fórmulas

Esta sección proporciona dos fórmulas para ayudar a comparar los valores separados por comas en dos celdas y devolver los valores duplicados o únicos entre ellos.

Note: Las siguientes fórmulas solo funcionan en excel para 365. Si está utilizando otras versiones de Excel, intente usar el siguiente método VBA.

Tome las dos columnas anteriores como ejemplo, para comparar los números separados por comas en la Columna 1 con los números separados por comas en la misma fila de la Columna 2 y devolver valores duplicados o únicos, haga lo siguiente.

Devolver valores duplicados

1. Seleccione una celda para generar los números duplicados entre las dos celdas especificadas con números separados por comas, en este caso, selecciono la celda D2, luego ingreso la fórmula a continuación y presiono el Participar llave. Seleccione la celda de fórmula y arrastre su Manija de Autocompletar hacia abajo para obtener los números duplicados entre las celdas de las otras filas.

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

Devolver valores únicos

Para devolver los números únicos entre las dos celdas especificadas con números separados por comas en la misma fila, la siguiente fórmula puede ayudar.

1. Seleccione una celda para generar los números únicos, en este caso, selecciono la celda E2, luego ingreso la fórmula a continuación y presiono el botón Participar llave. Seleccione la celda de fórmula y arrastre su Manija de Autocompletar hacia abajo para obtener los números únicos entre las celdas de las otras filas.

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

Notas:

1) Las dos fórmulas anteriores solo se pueden aplicar en Excel para 365. Si está utilizando una versión de Excel que no sea Excel para 365, pruebe el siguiente método de VBA.
2) Las celdas a comparar deben estar adyacentes entre sí en la misma fila o columna.

Compare dos columnas con valores separados por comas y devuelva valores duplicados o únicos con VBA

La función definida por el usuario proporcionada en esta sección ayuda a comparar los valores separados por comas en dos celdas específicas y devolver los valores duplicados o valores únicos entre ellos. Por favor, haga lo siguiente.

Tome el mismo ejemplo anterior, para comparar los números separados por comas en la Columna 1 con los números separados por comas en la misma fila de la Columna 2 y devolver valores duplicados o únicos, pruebe la función definida por el usuario en esta sección.

1. En el libro de trabajo de apertura, presione el otro + F11 teclas para abrir el Microsoft Visual Basic para aplicaciones ventana.

2. En el Microsoft Visual Basic para aplicaciones ventana, haga clic recuadro > Móduloy copie el siguiente código VBA en el Módulo (Código) ventana.

Código de VBA: compare valores separados por comas en dos celdas y devuelva 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. Después de pegar el código en el Módulo (Código) ventana, vaya a hacer clic Herramientas > Referencias para abrir el Referencias - VBAProject ventana, compruebe la Tiempo de ejecución de secuencias de comandos de Microsoft cuadro y luego haga clic en el OK del botón.

4. presione el otro + Q llaves para cerrar el Microsoft Visual Basic para aplicaciones ventana.

5. Ahora necesita aplicar dos funciones por separado para devolver los valores duplicados y únicos de dos celdas de valor separadas por comas.

Devolver valor duplicado

Seleccione una celda para generar los números duplicados, en este ejemplo, selecciono la celda D2, luego ingreso la fórmula a continuación y presiono el botón Participar clave para obtener los números duplicados entre la celda A2 y B2.

Seleccione la celda de fórmula y arrastre su controlador de Autocompletar hacia abajo para obtener los números duplicados entre las celdas de las otras filas.

=COMPARE(A2,B2,TRUE)

Devolver valores únicos

Seleccione una celda para generar los números únicos, en este ejemplo, selecciono la celda E2, luego ingreso la fórmula a continuación y presiono el botón Participar clave para obtener los números únicos entre la celda A2 y B2.

Seleccione la celda de fórmula y arrastre su controlador de Autocompletar hacia abajo para obtener los números únicos entre las celdas de las otras filas.

=COMPARE(A2,B2,FALSE)

Las mejores herramientas de productividad de oficina

Características populares: Buscar, resaltar o identificar duplicados   |  Eliminar filas en blanco   |  Combine columnas o celdas sin perder datos   |   Ronda sin fórmula ...
Super búsqueda: Búsqueda virtual de criterios múltiples    Búsqueda V de valores múltiples  |   VLookup en varias hojas   |   Búsqueda difusa ....
Lista desplegable avanzada: Crear rápidamente una lista desplegable   |  Lista desplegable dependiente   |  Lista desplegable de selección múltiple ....
Administrador de columnas: Agregar un número específico de columnas  |  Mover columnas  |  Toggle Estado de visibilidad de columnas ocultas  |  Comparar rangos y columnas ...
Características destacadas: Enfoque de cuadrícula   |  Vista de diseño   |   Gran barra de fórmulas    Administrador de hojas y libros de trabajo   |  Biblioteca de Recursos (Texto automático)   |  Selector de fechas   |  Combinar hojas de trabajo   |  Cifrar/descifrar celdas    Enviar correos electrónicos por lista   |  Súper filtro   |   Filtro especial (filtro negrita/cursiva/tachado...) ...
Los 15 mejores conjuntos de herramientas12 Texto Herramientas (Añadir texto, Quitar caracteres, ...)   |   +50 Tabla Tipos (Diagrama de Gantt, ...)   |   40+ Práctico Fórmulas (Calcular la edad según el cumpleaños, ...)   |   19 Inserción Herramientas (Insertar código QR, Insertar imagen desde la ruta, ...)   |   12 Conversión Herramientas (Números a palabras, Conversión de Moneda, ...)   |   7 Fusionar y dividir Herramientas (Filas combinadas avanzadas, Células partidas, ...)   |   ... y más

Mejore sus habilidades de Excel con Kutools for Excel y experimente la eficiencia como nunca antes. Kutools for Excel ofrece más de 300 funciones avanzadas para aumentar la productividad y ahorrar tiempo.  Haga clic aquí para obtener la función que más necesita...

pestaña kte 201905


Office Tab lleva la interfaz con pestañas a Office y hace que su trabajo sea mucho más fácil

  • Habilite la edición y lectura con pestañas en Word, Excel, PowerPoint, Publisher, Access, Visio y Project.
  • Abra y cree varios documentos en nuevas pestañas de la misma ventana, en lugar de en nuevas ventanas.
  • ¡Aumenta su productividad en un 50% y reduce cientos de clics del mouse todos los días!
Comments (0)
No ratings yet. Be the first to rate!
There are no comments posted here yet
Please leave your comments in English
Posting as Guest
×
Rate this post:
0   Characters
Suggested Locations