Macro para filtrar entre dos fechas

Tengo un documento con datos desde la columna "B" hasta la columna "S", quiero filtrar la columna "R" entre dos fechas (por los días anteriores a hoy y posteriores a dentro de 7 días) y que también filtre la columna "S" por igual a 0. La macro que he utilizado para realizar el filtro no funciona:

Sheets("Plantilla").Select

    Range("QQ:RR").Select

    Selection.NumberFormat = "m/d/yyyy"

    ActiveSheet.Range("$A$1:$W$3000").AutoFilter Field:=19, Criteria1:="0", Operator:=xlAnd

    Selection.AutoFilter Field:=18, Criteria1:= _

    "<" & Format(Date, "mm/dd/yyyy"), Operator:=xlAnd, Criteria2:=">" & Format(Date + 7, "mm/dd/yyyy")

Además quiero que los datos filtrados los corte y los pegue en la hoja "Bajas" y de la hoja "Plantilla" (en la cual hemos realizado el filtro) elimine las filar cortadas.

1 respuesta

Respuesta
1

H o    l  a :               Te anexo la macro

Sub FiltrarFechas()
'Por.Dante Amor
    Application.ScreenUpdating = False
    Set h1 = Sheets("Plantilla")
    Set h2 = Sheets("Bajas")
    u = h2.Range("R" & Rows.Count).End(xlUp).Row + 1
    For i = h1.Range("R" & Rows.Count).End(xlUp).Row To 5 Step -1
        If h1.Cells(i, "S") = 0 And _
           (h1.Cells(i, "R") < Date Or h1.Cells(i, "R") > Date + 7) Then
            h2.Rows(u).Insert Shift:=xlDown, CopyOrigin:=xlFormatFromLeftOrAbove
            h1.Rows(i).Copy
            h2.Range("A" & u).PasteSpecial xlValues
            h1.Rows(i).Delete
        End If
    Next
    Application.ScreenUpdating = True
    MsgBox "Fin"
End Sub

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

Añade tu respuesta

Haz clic para o

Más respuestas relacionadas