Eliminar filas con datos duplicados, en base a datos de otra hoja de excel

Tengo dos hojas de cálculo.

La primera (Base General)constan los trámites que ya se vienen atendiendo en mi unidad, la otra contiene un reporte de todos los trámites que han ingresado a la empresa, dentro de un periodo de tiempo determinado.

Necesito que a través de una macro VBA, en la hoja de reporte se eliminen las filas que contienen números de trámite que ya existen en la Base General, y una vez depurado, se copie a continuación del último registro de la base general.

1 respuesta

Respuesta
2

Te anexo la macro. Cambia en la macro "reporte" y "Base General" por el nombre de tus hojas, también cambia "B" por la columna del trámite en cada hoja.

Sub Eliminar_Filas()
'Por.Dante Amor
    Set h1 = Sheets("reporte")
    Set h2 = Sheets("Base General")
    '
    col1 = "B"     'columna de trámites en la hoja reporte
    col2 = "B"     'columna de trámites en la hoja base general
    '
    For i = h1.Range(col1 & Rows.Count).End(xlUp).Row To 2 Step -1
        Set b = h2.Columns(col2).Find(h1.Cells(i, col1), lookat:=xlWhole)
        If Not b Is Nothing Then
            h1.Rows(i).Delete
        End If
    Next
    '
    u1 = h1.Range(col1 & Rows.Count).End(xlUp).Row
    u2 = h2.Range(col2 & Rows.Count).End(xlUp).Row + 1
    h1.Rows("2:" & u1).Copy h2.Range("A" & u2)
    MsgBox "Fin"
End Sub

.

'S aludos. Dante Amor. Recuerda valorar la respuesta. G racias

.

Avísame cualquier duda

.

Gracias Dante; funciona a la perfección; ahora como debo hacer para que una vez la información se encuentra sin datos duplicados, se copie a la Base General, a continuacióndel ultimo registro

La macro ya copia los datos que quedaron a la hoja base general

Hola Dante, sabes que no esta copiando a la base general los datos depurados

Debes tener datos en la columna B

A lo mejor se eliminaron todas las filas, es por eso que ya no copia

Añade tu respuesta

Haz clic para o

Más respuestas relacionadas