Averiguar la fecha de el Lunes y el Domingo con el numero de semana en VBA Excel

A tod@s!

Si doy el numero de semana del año como puedo averiguar la fecha de esa semana del Lunes y del Domingo.

Atentamente: Valerio

3 respuestas

Respuesta
3

Te dejo un par de fórmulas según si tu calendario inicia en día Domingo o Lunes.

Títulos: A2 = nro de semana , B2 = Inicio de semana, C2 = fin de semana

A3:  27   (nro de semana de la que deseas obtener las fechas)

B3:  =FECHA(AÑO(HOY());1;1) - RESIDUO(DIASEM(FECHA(AÑO(HOY());1;7)); 7) + (A3-1)*7

C3:  = B3+6

Nota: reemplazar la función AÑO ingresando un número de año diferente. Por ej: FECHA(2023;1;1)

La función DIASEM tiene 2 argumentos: la fecha y el tipo, siendo 1 u omitido si la semana inicia un domingo y 2 si inicia un lunes. Por lo tanto en B3, para un Lunes sería:

B3:  =FECHA(AÑO(HOY());1;1) - RESIDUO(DIASEM(FECHA(AÑO(HOY());1;7);2); 7) + (A3-1)*7

Faltó comentarlo para VBA ;)

En el video 15 de mi canal dejo las instrucciones según si utilizaremos los siguientes modos de obtener una fórmula en VBA:

celda = Application.WorkSheetFunction.....

celda.Formula = ....

celda.FormulaR1C1= ...

Utilizando la grabadora de macros (ver video Nº 62) obtuve la instrucción para el 3er modelo:

Range("B3").FormulaR1C1 = _
"=DATE(YEAR(TODAY()),1,1) - MOD(WEEKDAY(DATE(YEAR(TODAY()),1,7)), 7) + (RC[-1]-1)*7"

Tendrás que grabar o ajustarla para el día lunes.

https://www.youtube.com/watch?v=ZUr-h45bJAw&list=PLrhlyizWZzOERwRMxIIy-BTP-CyXh_K5N&index=72 

https://www.youtube.com/watch?v=QtVboi0R9Yc&list=PLrhlyizWZzOERwRMxIIy-BTP-CyXh_K5N&index=25 

Sdos!

Respuesta

I. Hola Valerio, por mi parte sólo conozco de oídas las funciones 'DateDiff' y Weekday, lo lamento aunque tal vez pueda serle de alguna utilidad.

https://excelatumedida.com/como-usar-la-funcion-weekday-en-vba/ 

https://www.youtube.com/watch?v=FqBk_6hDz0Y 

https://www.youtube.com/watch?v=nyrtSTHWbhE 

Como suelo comentar quisiera pasarle la información que vi sobre su consulta por si pudiese serle de alguna utilidad mientras le atiende un experto de primera mano, el que si desea y no llegasen respuestas podríamos invocar para que vea su consulta y pueda responderle si fuese posible.

Le ruego me disculpe la imprecisión y molestias de lectura, ánimo.

https://stackoverflow-com.translate.goog/questions/46973967/vba-convert-date-to-week-number?_x_tr_sl=en&_x_tr_tl=es&_x_tr_hl=es&_x_tr_pto=sc 

https://www-ablebits-com.translate.goog/office-addins-blog/excel-weeknum-function-convert-week-number-date/?_x_tr_sl=en&_x_tr_tl=es&_x_tr_hl=es&_x_tr_pto=sc 

https://stackoverflow-com.translate.goog/questions/48111723/vba-get-start-date-from-week-number-of-the-year?_x_tr_sl=en&_x_tr_tl=es&_x_tr_hl=es&_x_tr_pto=sc 

https://www-ablebits-com.translate.goog/office-addins-blog/excel-weekday-function/?_x_tr_sl=en&_x_tr_tl=es&_x_tr_hl=es&_x_tr_pto=sc 

https://www.youtube.com/watch?v=zA2irpJ2G8k 

https://exceljet-net.translate.goog/formulas/get-monday-of-the-week?_x_tr_sl=en&_x_tr_tl=es&_x_tr_hl=es&_x_tr_pto=sc 

https://www-mrexcel-com.translate.goog/board/threads/how-do-i-get-the-week-number-in-vba.834662/?_x_tr_sl=en&_x_tr_tl=es&_x_tr_hl=es&_x_tr_pto=sc 

Respuesta

Revisa el formato condicional:

https://youtu.be/2nZ57ip0Yd8 

Sal u dos

Dante Amor

Añade tu respuesta

Haz clic para o

Más respuestas relacionadas