Filtrar información y luego pasar a otro libro

Tengo una macro que copia y pega del libro llamado Origen y Hoja1, dónde este está cerrado, al libro Destino y Hoja 2 de la siguiente manera:

Sub importar()

Application.ScreenUpdating = False

Application.Calculation = xlCalculationManual

Application.EnableEvents = False

ActiveSheet.DisplayPageBreaks = False

Dim vblibroorigen As Workbook

ruta = "C:\Users\23\Origen.xlsx"

'datos destino

Set vblibrodestino = Workbooks(ThisWorkbook.Name)

Set vbhojadestino = vblibrodestino.Worksheets("Hoja2")

'datos origen

Set vblibroorigen = Workbooks.Open(ruta)

Set vbhojaorigen = vblibroorigen.Worksheets("Hoja1")

ufiLa = vbhojaorigen.Range("a" & Rows.Count).End(xlUp).Row

vbhojaorigen.Range("a2:b" & ufiLa).Copy Destination:=vbhojadestino.Range("a2")

Workbooks(vblibroorigen.Name).Close savechanges = False

Application.ScreenUpdating = True

Application.Calculation = xlCalculationAutomatic

Application.EnableEvents = True

ActiveSheet.DisplayPageBreaks = True

End Sub

Sin embargo como el libro Origen es muy grande me gustaría hacer un filtror pevio para pasar la información al libro Destino.

La tabla origen tiene 10 columnas con cabeceras y muchas filas.

Me gustaría que en A1 del libro Destino poner el criterio de búsqueda dador por algunas de las 10 cabecera y en B1 poner la palabra clave a buscar.

Luego con esa coincidencia pegar unicamente las filas una debajo de la otra.

1 respuesta

Respuesta
4

En el apartado de 'datos origen', a continuación de la instrucción uFila =, agrega las líneas que dejo a continuación:

uFila = vbhojaorigen.Range("a" & Rows.Count).End(xlUp).Row
'filtrar x col 1 (A) con criterio ???   AJUSTAR ESTOS 2 ARGUMENTOS
With vbhojaorigen
    If .FilterMode Then .ShowAllData
    .Range("$A$1:$B$" & uFila).AutoFilter Field:=1, Criteria1:="RÚSTICO"
    ufiLaFiltrada = .Range("A" & Rows.Count).End(xlUp).Row
End With
'se copia el rango filtrado a la hoja Destino:
vbhojaorigen.Range("A2:B" & ufiLaFiltrada).Copy Destination:=vbhojadestino.Range("a2")

Y luego sigue tu instrucción de cierre y todo lo demás.

En mi canal encontrarás otros ejemplos con filtros:

Filtro Avanzado: https://www.youtube.com/watch?v=Rg0lbTnySuE&list=PLrhlyizWZzOERwRMxIIy-BTP-CyXh_K5N&index=56&t=253s 

Filtro Dinámico:  https://www.youtube.com/watch?v=lUcTVR-hB1g&list=PLrhlyizWZzOERwRMxIIy-BTP-CyXh_K5N&index=55&t=574s 

Con criterios en otra hoja:  https://www.youtube.com/watch?v=qehVGJ1TCgc&list=PLrhlyizWZzOERwRMxIIy-BTP-CyXh_K5N&index=11&t=31s 

Añade tu respuesta

Haz clic para o

Más respuestas relacionadas