Código VBA para cambiar inicio de semana

He estado buscando una solución y no he encontrado, tal vez puedan ayudarme. Tengo un archivo tipo agenda con datos de fecha y actividades. He armado un formulario para su carga y búsqueda de registros. El tema es que al querer filtrar las fechas para la semana próxima, que debería iniciar un lunes, me filtra desde el domingo. La idea es obtener todos los registros desde el lunes al próximo domingo. ¿De qué manera podría modificar esto?

1 Respuesta

Respuesta
1

Desconozco cómo seleccionas los criterios para el filtro. Solo quería comentar que Excel utiliza de modo predeterminado la configuración regional de Windows.

Si allí está configurado que la semana se inicia un domingo así se verá en Excel.

Buenas noches Elsa. Muchas gracias por su tiempo. Le comento que el filtro que uso para filtrar este periodo es una macro grabada, usando el Filtro de fecha->Esta semana. He intentado su alternativa y no me resulta, por ejemplo, al filtra ESTA SEMANA, llega hasta el 08 de Septiembre, y mi intención es que llegue hasta el domingo inclusive. Gracias por contestar. Saludos

Entonces se me ocurre que agregues una col auxiliar con la fórmula:

=NUM.DE.SEMANA(D7;2)

Lo que se indica con el argumento 2 es que considere que las semanas inician un lunes. Con 1 sería el modo predeterminado o sea domingo.

Luego en tu macro para filtrar establecerás el criterio con esta instrucción:

cri01 = Application.WorksheetFunction.WeekNum(Date, 2)
'se filtra la columna auxiliar según el criterio asignado
    ActiveSheet.Range("$A$6:$M$14").AutoFilter Field:=13, Criteria1:=cri01

Le estoy diciendo que el criterio es el número de semana del día de hoy (date). Y así se verá el resultado.

Nota: la misma macro puede agregarte la col, rellenarla con la fórmula y al finalizar eliminarla.

Espero te sirva la solución.

Sdos.

Elsa

Añade tu respuesta

Haz clic para o

Más respuestas relacionadas