¿Qué fórmula de Excel puedo usar para calcular el segundo lunes de un mes determinado?

11

¿Qué fórmula de Excel puedo usar para calcular el segundo lunes de un mes determinado?

Puede suponer que tengo una celda que contiene el primer día del mes para trabajar.

En interés de otros usuarios, ¿puede explicar también cómo alterar la fórmula para obtener el primer, tercer o cuarto lunes del mes y también otros días de la semana? por ejemplo, el tercer viernes del lunes ...

Altamente irregular
fuente
Quería una fórmula para calcular el segundo miércoles del mes y año actual para agregar automáticamente la fecha de la reunión a una hoja de inicio de sesión para una reunión mensual. Creé la fórmula a continuación. =DATE(YEAR(NOW()),MONTH(NOW()),1+7*2)-WEEKDAY(DATE(YEAR(NOW()),MONTH(NOW()),8-4))

Respuestas:

18

Aquí hay algo que encontré con una búsqueda rápida:

Genéricamente puedes obtener el enésimo día del mes con esta fórmula

=DATE(B2,A2,1+7*n)-WEEKDAY(DATE(B2,A2,8-xday)) 

donde el año está en B2 y el mes (como un número del 1 al 12) está en A2, y donde xday es un número que representa el día de la semana (1 = sol hasta el 7 = sábado), por lo tanto, para el primer sábado se convierte en

=DATE(B2,A2,1+7*1)-WEEKDAY(DATE(B2,A2,8-7)) 

o para el 4to jueves

=DATE(B2,A2,1+7*4)-WEEKDAY(DATE(B2,A2,8-5)) 

Por lo tanto, si estoy leyendo esto correctamente, el 2 º lunes del mes es

=DATE(B2,A2,1+7*2)-WEEKDAY(DATE(B2,A2,8-2)) 

( crédito donde se debe )

cerveza inglesa
fuente
1
Funciona perfectamente, por lo que puedo decir! Muchas gracias
Muy irregular
0

= SI ((DÍA DE LA SEMANA (A1)> 3), (A1 + (17-DÍA DE LA SEMANA (A1))), (A1 + (10-DÍA DE LA SEMANA (A1))))

A1 es el primer día del mes

David
fuente
¿Puedes explicarme mas?
yass
No hay necesidad de ninguna explicación: ¡ no funciona !
robinCTS
0

No pude hacer que esto funcione correctamente tampoco. Se me ocurrió una forma súper complicada (mi idioma) que parece funcionar.

A2 = Mes
B2 = año
C2 = Día de la semana (1 - 7, 1 = domingo)
D2 = "número" (3 = 3er x día, etc.)

SO segundo lunes sería A2 = mes actual, B2 = año actual, C2 = 2 (para el lunes) y D2 = 2 (para el segundo lunes)

F2 = =IF(MONTH(IF((WEEKDAY(VALUE(($A2&"/01/"&$B2))))=$C2,(VALUE(($A2&"/01/"&$B2)))+(($D2*7)-7),IF((WEEKDAY(VALUE(($A2&"/01/"&$B2))))<$C2,((VALUE(($A2&"/01/"&$B2)))+($C2-(WEEKDAY(VALUE(($A2&"/01/"&$B2)))))+(($D2*7)-7)),(VALUE(($A2&"/01/"&$B2)))+($C2-(WEEKDAY(VALUE(($A2&"/01/"&$B2)))))+7+(($D2*7)-7))))=A2,IF((WEEKDAY(VALUE(($A2&"/01/"&$B2))))=$C2,(VALUE(($A2&"/01/"&$B2)))+(($D2*7)-7),IF((WEEKDAY(VALUE(($A2&"/01/"&$B2))))<$C2,((VALUE(($A2&"/01/"&$B2)))+($C2-(WEEKDAY(VALUE(($A2&"/01/"&$B2)))))+(($D2*7)-7)),(VALUE(($A2&"/01/"&$B2)))+($C2-(WEEKDAY(VALUE(($A2&"/01/"&$B2)))))+7+(($D2*7)-7))),"error")

Estoy seguro de que hay una forma mucho más limpia de hacer esto (ya lo noté si volteo uno de mis IFs, puedo eliminar alguna replicación) y además la mayoría de las fórmulas repetidas podrían extraerse en celdas separadas para hacer que la fórmula final sea más limpia . Pero no he tenido la oportunidad de investigar qué otras fórmulas podrían estar disponibles, así que lo dejo como está por ahora. También hice una versión aún más fea con verificación de errores y resultados ligeramente más bonitos. Pero es demasiado complejo para publicar aquí.

Scott Stork
fuente