Formato fechas en filtro avanzado (AdvancedFilter xlFilterCopy en VBA) en Excel 2003 y Excel 2007

15/05/2010 - 19:44 por Valentín Playá | Informe spam
Tengo un lío usando fechas como parámetro en el filtro avanzado
(AdvancedFilter Action:=xlFilterCopy) ejecutado desde VBA que no estoy
seguro si es culpa de Excel o mía.

Intento explicar el problema: Uso la versión española de Excel. Pongo
los parámetros para el filtro avanzado con la instrucción VBA :
Sheets("Parameters").Range("F2") = ">=" &
Format(Sheets("Jour").Range("B1"), "mm/dd/yyyy"). Si uso el formato de
fecha americano "mm/dd/yyyy" funciona bien el filtro en Excel 2007pero
no en Excel 2003. Por contra, si uso el formato europeo "dd/mm/yyyy"
funciona bien en Excel 2003 pero no en Excel 2007.

Para la solución simple pero evitando hacer el filtro a mano, ¿puedo
saber la versión de Excel en la que se ejecuta la macro?.

Para la solución de verdad, ¿alguna opción o alternativa para unificar
el formato de las fechas?. A mi no se me ocurre nada y arrastro este
problema desde hace unos días.

Gracias y saludos,

Valentín
 

Leer las respuestas

#1 Héctor Miguel
17/05/2010 - 07:17 | Informe spam
hola, Valentín !

1) ambas versiones de excel estan en el mismo equipo ?, o...
que certeza tienes de que ambos equipos utilizan la misma configuracion regional ?
podria no ser "suficiente" conocer la version de excel que ejecuta la macro (???)

2) cual es el proposito de poner en [F2] de la hoja "parameters" UN criterio de evaluacion ? (">=")
tienes algun titulo en la celda [F1] ?, o piensas rellenar el resto de celdas de la columna [F] con otros criterios ?

3) cual es la columna en la hoja "parameters" que se va a comparar con el criterio ?
(probablemente convendria usar una formula y que el mismo excel se encargue de la evaluacion de la fecha ?)

saludos,
hector.

__ OP __
Tengo un lio usando fechas como parametro en el filtro avanzado (AdvancedFilter Action:=xlFilterCopy)
ejecutado desde VBA que no estoy seguro si es culpa de Excel o mia.

Intento explicar el problema: Uso la version española de Excel. Pongo los parametros para el filtro avanzado con la instruccion VBA :
Sheets("Parameters").Range("F2") = ">=" & Format(Sheets("Jour").Range("B1"), "mm/dd/yyyy").
Si uso el formato de fecha americano "mm/dd/yyyy" funciona bien el filtro en Excel 2007pero no en Excel 2003.
Por contra, si uso el formato europeo "dd/mm/yyyy" funciona bien en Excel 2003 pero no en Excel 2007.

Para la solucion simple pero evitando hacer el filtro a mano, puedo saber la version de Excel en la que se ejecuta la macro?.

Para la solución de verdad, alguna opción o alternativa para unificar el formato de las fechas?.
A mi no se me ocurre nada y arrastro este problema desde hace unos dias.

Preguntas similares