Autofiltro: no se ejecuta en la macro
Genero una macro en Excel que rastrea una tabla Excel y filtra una columna concreta:
1)Autofiltro personalizado (para seleccionar sólo datos entre una fecha y otra), acepta las opciones del autofiltro (columna F)
2) Voy a otra columna (columna K) y la copio (así sólo habré seleccionado datos entre esas 2 fechas anteriores)
3) La pego en otra hoja Excel para procesar esos datos más tarde...
El gran problema es que miro el código VBA y SI que se hace bien el autofiltrado de datos, pero cuando veo el resultado final de la ejecución de la macro o la ejecuto paso a paso NO filtra datos (la selección de filas aparece en blanco !), con lo cuál no lleva ni un solo dato seleccionado al sitio de destino.
Da la sensación de que al pulsar OK con el ratón en la ventana de autofiltro personalizado NO lo tiene en cuenta y sigue ejecutándose la macro.
¿Cuándo estoy grabando la macro, sigo todos los pasos y lo hace correctamente, pero cuando pincho el botón de ejecución de la macro después, NO FUNCIONA (no filtra nada de nada), Qué estoy haciendo mal?
Columns("F:F"). EntireColumn. AutoFit
Columns("F:F").Select
Selection.AutoFilter
Selection.AutoFilter Field:=1, Criteria1:=">=15/07/2005", Operator:=xlAnd _
, Criteria2:="<=31/07/2005"
Columns("K:K").Select
Selection.Copy
Windows("Libro1.xls").Activate
Sheets("Hoja2").Select
Columns("A:A").Select
ActiveSheet. Paste
Parece que el sistema NO entiende que cuando se ejecuta el autofiltro personalizado tiene que aparecer la selección de filas filtradas entre las fechas filtradas, con lo cuál no sirve para nada copiar lo que he filtrado,... Porque NO selecciona ninguna fila de datos.
Cuando creo la macro y la grabo ejecutándola manualmente, SI que filtro los datos y al aceptar el autofiltro personalizado aparecen todas las filas con los datos correspondientes para poder ser procesados posteriormente.
¿Por favor, alguna sugerencia?
Gracias por el interés y esfuerzo.
Y ya de paso, otro problema: cuando abro el fichero para autofiltrarlo, Excel considera que se ha modificado y ya no puedo cerrarlo automáticamente con una macro (porque aparece la ventana de "el fichero ha sido modificado. Desea guardar los cambios? Aceptar, Cancelar,..). Se puede hacer algo para que por macro se cierre el fichero sin preguntar nada ?.
1)Autofiltro personalizado (para seleccionar sólo datos entre una fecha y otra), acepta las opciones del autofiltro (columna F)
2) Voy a otra columna (columna K) y la copio (así sólo habré seleccionado datos entre esas 2 fechas anteriores)
3) La pego en otra hoja Excel para procesar esos datos más tarde...
El gran problema es que miro el código VBA y SI que se hace bien el autofiltrado de datos, pero cuando veo el resultado final de la ejecución de la macro o la ejecuto paso a paso NO filtra datos (la selección de filas aparece en blanco !), con lo cuál no lleva ni un solo dato seleccionado al sitio de destino.
Da la sensación de que al pulsar OK con el ratón en la ventana de autofiltro personalizado NO lo tiene en cuenta y sigue ejecutándose la macro.
¿Cuándo estoy grabando la macro, sigo todos los pasos y lo hace correctamente, pero cuando pincho el botón de ejecución de la macro después, NO FUNCIONA (no filtra nada de nada), Qué estoy haciendo mal?
Columns("F:F"). EntireColumn. AutoFit
Columns("F:F").Select
Selection.AutoFilter
Selection.AutoFilter Field:=1, Criteria1:=">=15/07/2005", Operator:=xlAnd _
, Criteria2:="<=31/07/2005"
Columns("K:K").Select
Selection.Copy
Windows("Libro1.xls").Activate
Sheets("Hoja2").Select
Columns("A:A").Select
ActiveSheet. Paste
Parece que el sistema NO entiende que cuando se ejecuta el autofiltro personalizado tiene que aparecer la selección de filas filtradas entre las fechas filtradas, con lo cuál no sirve para nada copiar lo que he filtrado,... Porque NO selecciona ninguna fila de datos.
Cuando creo la macro y la grabo ejecutándola manualmente, SI que filtro los datos y al aceptar el autofiltro personalizado aparecen todas las filas con los datos correspondientes para poder ser procesados posteriormente.
¿Por favor, alguna sugerencia?
Gracias por el interés y esfuerzo.
Y ya de paso, otro problema: cuando abro el fichero para autofiltrarlo, Excel considera que se ha modificado y ya no puedo cerrarlo automáticamente con una macro (porque aparece la ventana de "el fichero ha sido modificado. Desea guardar los cambios? Aceptar, Cancelar,..). Se puede hacer algo para que por macro se cierre el fichero sin preguntar nada ?.
2 respuestas
Respuesta de Elsa Matilde
3
Respuesta de daniel pellegrini