Macro para extraer un listado de nombres y copiarlo con su respectivas filas en otra hoja

Gente, me pueden dar una mano, tengo una planilla de excel 2010 con mas de 1000 personas y otras columnas con su dirección, nro de casa, barrio, etc, y necesitaría que por medio de una macro extraer de ese listado con sus correspondiente fila y pegarlo en otro solapa, aclaración para poder extraerlo debería validarlo con una tabla de nombre x, dicha tabla puede variar con el tiempo y la cantidad de personas también.

Desde ya muchas gracias

1 Respuesta

Respuesta
1

Tendrías que poner así tu información.

En la hoja1 las personas, así:

A B C

1 Nombre Dir Etc.

2 Ana asdf

3 Juan qwert

4 Rosa jklñ

En la hoja2 tu tabla x, así:

A

1 Nombre

2 Ana

3 Rosa

En la hoja3, la macro te pondría esto:

A B C
1 Nombre Dir Etc.
2 Ana asdf
3 Rosa jklñ

¿Eso es lo que quieres?

Si, si, pero en la hoja 1 las personas, al correr la macro deberá eliminar la información que pase a la hora 3. No se si me explico, cualquier cosa avisame.

Esta es la macro, también te anexo el archivo con el que hice pruebas.

Sub borrar()
'Por.DAM
Set h1 = Sheets("Hoja1")
Set h2 = Sheets("Hoja2")
Set h3 = Sheets("Hoja3")
h3.Cells.Clear
h1.Rows(1).Copy h3.Rows(1)
j = 2
For i = 2 To h2.Range("A" & Rows.Count).End(xlUp).Row
    Set b = h1.Columns("A").Find(h2.Cells(i, "A"))
    If Not b Is Nothing Then
        h1.Rows(b.Row).Copy h3.Cells(j, "A")
        h1.Rows(b.Row).Delete
        j = j + 1
    End If
Next
End Sub

https://www.dropbox.com/s/9nrdfh8ja9g03w7/copiayborra.xlsm

Saludos. Dante Amor
No olvides finalizar la pregunta.

esta perfecto, lo único que le falta que al presionar dos veces el botón de la macro no borre la información en al hora 3.

Si no quieres que borre, quita de la macro esta línea:

H3. Cells. Clear

Saludos. Dante Amor
No olvides finalizar la pregunta.

Añade tu respuesta

Haz clic para o

Más respuestas relacionadas