Macro buscar copiar y pegar
Basándome en una macro realizada por ti para otra respuesta, la he adaptado a mi hoja y me funciona, pero necesitaría varias cosas:
1º que me aclararas algunas lineas (las pongo en negrita y cursiva)
2º necesito que al principio me quite los filtros si los hay de la hoja1 (no he sido capaz de poner la instrucción)
3º que pueda ejecutarla en cualquier hoja, actualmente está para que se ejecute en la hoja2 y necesito que se ejecutara en cualquier hoja del libro.
La hoja con datos tiene 1100 lineas y 28 columnas
Te adjunto la macro
Gracias y saludos
Sub Rectángulo1_AlHacerClic()
'limpia rango de datos anteriores
Application.ScreenUpdating = False
ActiveSheet.Range("A1:AB100").Clear 'BORRA DONDE SE VA A COPIAR
crit = ActiveSheet.Range("AD4").Value ' EL DATO A BUSCAR LO TOMA DE AD4
Sheets("Hoja1").Select 'SELECCIONA LA HOJA1
ActiveSheet.Range("AB4").Select
Selection.AutoFilter
'ajustar rango total a filtrar. Field:= indica la col a filtrar
ActiveSheet.Range("$A$1:$F$70").AutoFilter Field:=2, Criteria1:=crit '(da lo mismo el rango que ponga funciona igual)
'copia el rango filtrado y lo lleva a la hoja 2, a partir de A1
ActiveSheet.Range("A1").CurrentRegion.SpecialCells(xlCellTypeVisible).Copy
Sheets("Hoja2").Select
ActiveSheet.Range("A1").Select
ActiveSheet.Paste
Application.CutCopyMode = False
ActiveSheet.Range("A1").Select
End Sub
1º que me aclararas algunas lineas (las pongo en negrita y cursiva)
2º necesito que al principio me quite los filtros si los hay de la hoja1 (no he sido capaz de poner la instrucción)
3º que pueda ejecutarla en cualquier hoja, actualmente está para que se ejecute en la hoja2 y necesito que se ejecutara en cualquier hoja del libro.
La hoja con datos tiene 1100 lineas y 28 columnas
Te adjunto la macro
Gracias y saludos
Sub Rectángulo1_AlHacerClic()
'limpia rango de datos anteriores
Application.ScreenUpdating = False
ActiveSheet.Range("A1:AB100").Clear 'BORRA DONDE SE VA A COPIAR
crit = ActiveSheet.Range("AD4").Value ' EL DATO A BUSCAR LO TOMA DE AD4
Sheets("Hoja1").Select 'SELECCIONA LA HOJA1
ActiveSheet.Range("AB4").Select
Selection.AutoFilter
'ajustar rango total a filtrar. Field:= indica la col a filtrar
ActiveSheet.Range("$A$1:$F$70").AutoFilter Field:=2, Criteria1:=crit '(da lo mismo el rango que ponga funciona igual)
'copia el rango filtrado y lo lleva a la hoja 2, a partir de A1
ActiveSheet.Range("A1").CurrentRegion.SpecialCells(xlCellTypeVisible).Copy
Sheets("Hoja2").Select
ActiveSheet.Range("A1").Select
ActiveSheet.Paste
Application.CutCopyMode = False
ActiveSheet.Range("A1").Select
End Sub
1 Respuesta
Respuesta de Elsa Matilde
1