¿Cómo borrar dos filas en excel si son iguales en dos de sus columnas y dejarlas si son diferentes?

Tengo dos listados con igual numero de columnas, los pego y los ordeno por una de ellas y me quedan varios pares de filas con datos iguales, quiero borrar las filas que tienen datos iguales solo si en otra de sus columnas también los datos son iguales y dejarlas si en una o ambas columnas son diferentes. Es decir, dejar las que no tengan par y las que teniendo par no son iguales en la otra columna, gracias.

1 Respuesta

Respuesta
1

Me puedes poner un ejemplo con datos, cuáles son esos dos listados y cuántas columnas tienen.

Saludos. Dam

por ejemplo:

a b c d

23 45 45 56

23 12 34 56

12 23 23 45

12 34 56 40

en estas filas son pares los 23 y los 12, pero solo quiero borrar los 23, ya que en la columna d tienen un valor diferente, en cambio los 23 tienen valores iguales en la columna d, esos no los quiero borrar. son tres columnas y cerca de 400 filas e mi hoja.

Perdona, pero sigo confundido, dices: "pero solo quiero borrar los 23, ya que en la columna d tienen un valor diferente, en cambio los 23 tienen valores iguales en la columna d", creo que en tu ejemplo alguno de los 23 que pusiste debe ser 12, pero no sé cuál, ¿lo puedes corregir?

Tengo otras dudas:

1. Qué pasa si en lugar de un par, ¿tienes 3 ó más números iguales?

2. ¿Se ordenan por la columna A?

3. Solamente son las columnas B, ¿C y D para comparar o puede haber más?

Saludos. Dam

Perdón, los 23 son los que quiero borrar porque tienen valores iguales en la columna D. Y mantener los 12 ya que tienen valores diferentes en la columna D. Siempre son solo un par o un numero solo. Se ordenan por la columna A, puede haber más columnas, pero solo deseo comparar la A y la D. Gracias y perdón por la confusión nuevamente.

Te mando una macro que hace lo que necesitas. La diferencia es que, no borra los duplicados, te va a copiar, en una hoja nueva, las que su par en la columna D sean diferente, es decir, en la hoja nueva vas a tener las filas, cómo si se hubieran borrado las filas que no necesitas.

Instrucciones
1. Abre tu hoja de excel
2. Para abrir Vba-macros y poder pegar la macro, Presiona ALt + F11
3. En el menú elige Insertar / Módulo
4. En el panel del lado derecho copia la macro
5. Para ejecutarla presiona F5

Nota: tu hoja se tiene que llamar "numeros", si deseas otro nombre, tienes que modificar la macro en donde dice "numeros" por el nombre que tu quieras, pero lo pones entre comillas.

'***Macro***
Sub borranumduplicados()
'borrar dos filas en excel si son iguales
'en dos de sus columnas y dejarlas si son diferentes
'Por.Dam
origen = "numeros"
Worksheets.Add
    destino = ActiveSheet.Name
Worksheets(origen).Select
    ufila = ActiveCell.SpecialCells(xlLastCell).Row
    ucol = ActiveCell.SpecialCells(xlLastCell).Column
finales = ""
m = 1
finales = ""
For i = 1 To ufila
    inicial = Cells(i, 1)
    final = Cells(i + 1, 1)
    If inicial = final Then
        'For j = 2 To ucol
            inicol = Cells(i, 4)
            fincol = Cells(i + 1, 4)
            If inicol <> "" Then
                If inicol = fincol Then
                    'son iguales no se copia
                    finales = "NO"
                Else
                    'Si se copia
                    finales = "SI"
                End If
            End If
        'Next
        If finales = "SI" Then
            'copia las celdas por parejas
            Range(Cells(i, 1), Cells(i + 1, ucol)).Select
            Range(Cells(i, 1), Cells(i + 1, ucol)).Copy
            Worksheets(destino).Select
            Cells(m, 1).Select
            ActiveSheet.Paste
            m = m + 2
            Worksheets(origen).Select
        End If
        i = i + 1
    Else
        'copia las celdas individual
        Range(Cells(i, 1), Cells(i, ucol)).Select
        Range(Cells(i, 1), Cells(i, ucol)).Copy
        Worksheets(destino).Select
        Cells(m, 1).Select
        ActiveSheet.Paste
        m = m + 1
        Worksheets(origen).Select
    End If
Next
End Sub
'***Macro***

Saludos.daM

Añade tu respuesta

Haz clic para o

Más respuestas relacionadas