Como filtrar por una columna de fechas usando el valor de una celda X y grabar una macro con ello

Probé creando esta macro pero no funciona correctamente:

Dim HOY As Variant
   HOY = [A2] (Podría ser también Range("A2").Value)
    Worksheets("Base de Datos").Range("$A$4:$J$50000").AutoFilter Field:=3, Criteria1:= _
        "PENDIENTE"
    Worksheets("Base de Datos").Range("$A$4:$J$50000").AutoFilter Field:=1, Criteria1:<=HOY

O tira error o no trae ningún resultado siendo que hay registros que cumplen con ambos criterios, están como PENDIENTES y tienen fecha menor o igual a la de HOY(), que es lo que hay en la celda A2

2 respuestas

Respuesta

Intenta arreglando esta parte así:

Criteria1:="<=" & HOY

De no funcionar "sube" a algún "Ddrive" al menos un extracto de tus datos para poder verlos y ayudarte más.

El VBA trata las fechas muy al estilo "EE.UU." así que podría ser eso o el tipo de variable pero, intenta lo primero y comentas.

Salu2

Abraham Valencia

Respuesta

Te paso un ejemplo para que te guíes

Sub Filtrarpemex()
   Set h1 = Sheets("Hoja1")
   If h1.AutoFilterMode Then h1.AutoFilterMode = False
   If h1.FilterMode Then h1.ShowAllData
    Dim dato As String
    Range("c1").Select   'se selecciona una celda del rango a filtrar Selection.AutoFilter
 'se filtra por el campo/columna3 o sea columna c y de criterios todo lo que contenga Pemex
Selection.AutoFilter Field:=3, Criteria1:="*PEMEX*", Operator:=xlFilterValues
'se filtra por el campo/columna2 o sea columna b y de criterios todo lo que contenga sea menor del dia 03 de septiembre 2017
'Generalmente utilizamos las fechas con formato "dd/mm/yyyy" pero Excel necesita las fechas en formato mm/dd/yyyy para aplicar el filtro
Selection.AutoFilter Field:=2, Criteria1:="<=09/03/2017", Operator:=xlFilterValues
'en este caso copio lo filtrado y lo pego en la hoja 2 pero lo puedes borrar o adaptar adonde deseas pegarlo
ActiveSheet. AutoFilter. Range. Copy
    Sheets("Hoja2"). Paste
End Sub

espero te puedas ayudar o si gustas mandame tu archivo a [email protected]

Añade tu respuesta

Haz clic para o

Más respuestas relacionadas