Copiar solo los datos de un filtro avanzado

Cómo estas!
Bueno, como siempre una duda. Estoy tratando de hacer una macro llamada Filtro, que ejecuta un filtro avanzado, selecciona solo los datos filtrados y los copia en otro libro de forma dinámica, es decir cada vez que mande a llamar al macro Filtro el criterio de filtrado es diferente.
¿Cómo le hago para copiar solo los datos filtrados?
Respuesta
3
Espero que tu también.
Asumiré que filtras los datos sobre la misma base y que, por ello, algunas celdas se ocultan, mostrando sólo las que cumplan con el criterio, cualquiera fuera éste.
Por lo tanto, necesitas que la macro identifique el nuevo rango y que considere sólo las celdas visibles.
Esta macro hace esa tarea y pega lo obtenido en otro libro:
Sub PegaFilt()
'Indica una celda de la base filtrada:
UnaCelda = "O14"
'Copiado de celdas visibles
Range(UnaCelda). CurrentRegion. SpecialCells(xlCellTypeVisible). Copy
'Ir a celda de destino
Windows("ElOtroLibro.xls").Activate
Sheets("OtraHoja"). Activate
Range("A1").Select
'pegado de valores
Selection.PasteSpecial Paste:=xlValues
'Pegado de formatos
Selection.PasteSpecial Paste:=xlFormats
End Sub
Al principio debes indicarle una celda cualquiera de aquella base.
También reemplaza los datos de Libro/Hoja/Celda según los tuyos propios.
Espero que esto te ayude.
Muy buen fin de semana
Fernando

Añade tu respuesta

Haz clic para o

Más respuestas relacionadas