Note: The other languages of the website are Google-translated. Back to English

¿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.

Nota:: 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 Enviar 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 Enviar 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

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 Enviar 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 Enviar 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

Kutools para Excel resuelve la mayoría de sus problemas y aumenta su productividad en un 80%

  • Reutilizar: Inserte rápidamente fórmulas complejas, gráficos y cualquier cosa que hayas usado antes; Cifrar celdas con contraseña; Crear lista de distribución y enviar correos electrónicos ...
  • Barra de súper fórmula (edite fácilmente varias líneas de texto y fórmulas); Diseño de lectura (leer y editar fácilmente un gran número de celdas); Pegar en rango filtrado...
  • Combinar celdas / filas / columnas sin perder datos; Contenido de celdas divididas; Combinar filas / columnas duplicadas... Prevenir celdas duplicadas; Comparar rangos...
  • Seleccione Duplicado o Único Filas; Seleccionar filas en blanco (todas las celdas están vacías); Super Find y Fuzzy Find en muchos libros de trabajo; Selección aleatoria ...
  • Copia exacta Varias celdas sin cambiar la referencia de la fórmula; Crear referencias automáticamente a varias hojas; Insertar viñetas, Casillas de verificación y más ...
  • Extraer texto, Agregar texto, Eliminar por posición, Quitar espacio; Crear e imprimir subtotales de paginación; Convertir entre contenido de celdas y comentarios...
  • Súper filtro (guardar y aplicar esquemas de filtros a otras hojas); Orden avanzado por mes / semana / día, frecuencia y más; Filtro especial en negrita, cursiva ...
  • Combinar libros y hojas de trabajo; Combinar tablas basadas en columnas clave; Dividir datos en varias hojas; Conversión por lotes de xls, xlsx y PDF...
  • Más de 300 potentes funciones. Compatible con Office/Excel 2007-2021 y 365. Compatible con todos los idiomas. Fácil implementación en su empresa u organización. Funciones completas Prueba gratuita de 30 días. Garantía de devolución de dinero de 60 días.
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!
officetab parte inferior
Comentarios (0)
Aún no hay calificaciones. ¡Sé el primero en calificar!
No hay comentarios publicados aquí todavía
Deje sus comentarios
Publicar como invitado
×
Califica esta publicación:
0   Personajes
Ubicaciones sugeridas

Siganos

Copyright © 2009 - www.extendoffice.com. | Reservados todos los derechos. Energizado por ExtendOffice, | Mapa del Sitio
Microsoft y el logotipo de Office son marcas comerciales o marcas comerciales registradas de Microsoft Corporation en los Estados Unidos y / o en otros países.
Protegido por Sectigo SSL