Hola, respecto a lo que publiqué en ese foro que comentas decir que con 12000 celdas es para que se entienda, que no tengo 3 o 4 cables como para estar copiando y pegando formulas ya que como se puede entender da lugar a colarte y pegar una en la celda que no es sobre todo cuando llevas ya un buen rato con ello.
Respecto a utilizar una hoja auxiliar es tal y como lo planteé. De hecho el código de Leopoldo Blancas me funcionó perfecto, quedando ese desafío resuelto. Donde estaba el problema?Que cuando ejecutaba la macro me pegaba en las celdas en blanco la fórmula en inglés, que es como tengo el excel en un ordenador de trabajo, y no reconoce las funciones en este otro ordenador también de trabajo y que está en español (que por politicas de empresa no tengo permitido cambiar, capado) Por tanto aunque el código estaba genial no puedo utilizar la hoja excel en el ordenador de teletrabajo. Es por eso por lo que en este foro he planteado el problema desde otro punto de vista, quitando las fórmulas de la hoja auxiliar, ya que por eso método no me valió. Dejo captura de lo que me pasaba (que no es el caso en este tema), aunque pusiera ESFORMULA como comentas no me iba a valer, porque las funciones que contienen están en ingles,, Puedo buscar la traducción?Si, pero me va a dejar de valer para uno de los ordenadores igual. Es por eso que no conviene mezclar lo de un foro con este porque lo he planteado de otra forma aquí. Un saludo!
Por
MANTONIOPM, · publicado
Hola a todos,
Antes de nada os felicito por facilitarnos a todos nuestras jornadas con excel.
Os comento mi problema:
Quiero conseguir filtrar de una columna entre una fecha con su hora y
otra fecha con su hora.
Para esto he optado, tras consultar por muchas paginas, por
transformar la fecha en formato long y la hora en formato double,
esto mismo es lo que le paso a la funcion Autofilter en su campo
"criteria" y se supone que tendria que funcionar.
Tras ejecutar el código el resultado está vacio. Investigando en el
propio excel, depurando, para ver que es lo que ha filtrado (me voy a
filtrado entre fechas y veo que hay escrito) y aparece que le falta
la "coma" en el valor numerico.
No se a que puede ser debido, sabrías si es necesario actualizar las
referencias para poder trabajar correctamente con autofilter?
Muchisimas gracias por vuestra ayuda!
Incluyo el codigo en cuestion:
Sub Filtrar_entre_fechas()
Dim Dayfilter As Date
Dim Dayfilter2 As Date
Dim Shift1 As Date
Dim Shift2 As Date
Dim lFecha1 As Long, lFecha2 As Long
Dim dtime1 As Double, ddtime2 As Double
Dim ddatetime1 As Double
Dim ddatetime2 As Double
Dim prueba1 As String
Dim prueba2 As String
Dayfilter = "11/12/2012"
Dayfilter2 = "12/12/2012"
Shift1 = "7:00"
Shift2 = "15:00"
Range("R1") = Dayfilter
Range("R2") = Dayfilter2
Range("R3") = Shift1
Range("R4") = Shift2
lFecha1 = Range("R1")
lFecha2 = Range("R2")
dtime1 = Range("R3")
dtime2 = Range("R4")
ddatetime1 = lFecha1 + dtime1
ddatetime2 = lFecha2 + dtime2
prueba1 = Mid(dtime1, 2)
prueba2 = Mid(dtime2, 2)
With ActiveSheet
If .AutoFilterMode = True Then .AutoFilterMode = False
End With
Cells.Select
Selection.AutoFilter
ActiveSheet.Range("$A$1:$E$1903").AutoFilter Field:=1, Criteria1:="MicroparoB1100"
'ActiveSheet.Range("$A$1:$E$1903").AutoFilter Field:=2, Criteria1:=">=" & ddatetime1, Operator:=xlAnd, Criteria2:="<=" & ddatetime2
ActiveSheet.Range("$A$1:$E$1903").AutoFilter Field:=2, Criteria1:=">=" & lFecha1 & prueba1, Operator:=xlAnd, Criteria2:="<=" & lFecha2 & prueba2
End Sub