Calcular el número de domingos en el mes


8

En Microsoft Excel, estoy buscando determinar la cantidad de domingos en un mes determinado. Estoy preparando una hoja de cálculo de presupuesto y algunas de las subcuentas obtienen fondos adicionales cuando cinco domingos son en el mes en lugar de cuatro.

La única celda a la que tengo que hacer referencia es el título de la hoja que se encuentra en la celda A1 y es igual al mes actual. Por ejemplo6/1/14

Respuestas:


12

Pruebe esto donde A1es el día de inicio del mes:

=SUMPRODUCT(N(TEXT(ROW(INDIRECT(A1&":"&EOMONTH(A1,0))),"ddd")="Sun"))

También puede usar esto para cualquier día de la semana, simplemente cambie "Sun"y cualquier rango de fechas reemplazando A1con la fecha de inicio y la EOMONTH(A1,0)fecha de finalización.


1
Guau. Esto es realmente creativo. Déjame entender. ¿Creamos los valores de fecha para todo el mes con las funciones indirectas y de fila? Luego los convertimos a texto en forma de Sol, Lunes, etc. Evaluamos la condición del Sol y cambiamos el resultado a uno o cero y luego sumamos el resultado. ¿Es eso correcto?
wbeard52

sí exactamente .. :)
Jay-ar

9

Si la fecha que menciona es siempre la primera del mes, esta también funcionará:

=INT((WEEKDAY(A1-1)+EOMONTH(A1,0)-A1)/7)

Simple. Muy elegante en comparación con mi fórmula anterior. Gracias.
wbeard52

3

Muy similar a una respuesta anterior, pero un poco más limpia ...

=SUMPRODUCT(N(WEEKDAY(ROW(INDIRECT(A1&":"&EOMONTH(A1,0))))=1))

3
=DAY(EOMONTH(A1,0))-NETWORKDAYS.INTL(A1,EOMONTH(A1,0),11)

EDITAR: Esto funciona en Excel 2016, no estoy seguro de cuándo se introdujo NETWORKDAYS.INTL.


Qué es Networkdays.Intl no funciona con todos los Excel
yass

Ah, tienes razon. No vi que se refería a Excel 2010. Tengo 2016. A diferencia de networkdays, Networkdays.intl le permite elegir los fines de semana. En este caso, le dije a Excel que el fin de semana es solo domingo, eso es lo que significa el 11. Entonces le da la cantidad de días en un período sin contar los domingos.
SRCP

NETWORKDAYS.INTLestá disponible desde Excel 2010 . Puedes ver el número 2010 al lado de su nombre. vea la captura de pantalla en Excel 2010
phuclv

1

Creo que he encontrado otra forma de desollar a este gato (por así decirlo).

Si desea evitar ingresar fechas y tener una hoja grande para la proyección (18 meses, por ejemplo), entonces podría simplemente decirle a la fórmula cuáles son su mes y año, y tener el formato correspondiente. Esto se unió con una referencia absoluta a las celdas de un encabezado que contiene el día de la semana en cuestión y tiene una tabla mucho más compacta y limpia (en mi opinión).

A3 = Ene, B3 = 2017, C2: I2 = 3 abreviatura del día de char (es decir, SUN)

Ingrese la fórmula en la celda C3

=SUMPRODUCT(N(TEXT(ROW(INDIRECT(DATEVALUE(TEXT(CONCAT($A3,"/",$B3),"mm/dd/yyyy"))&":"&EOMONTH(DATEVALUE(TEXT(CONCAT($A3,"/",$B3),"mm/dd/yyyy")),0))),"ddd")=C$2))

Feliz cacería


1

Una ligera variación de la respuesta aceptada , donde no necesita el primer día del mes A1.

Esto se logra reemplazando A1con:

date(year(today()),month(today()),1)

Esto supone que lo desea para el mes actual.

=SUMPRODUCT(N(TEXT(ROW(INDIRECT(date(year(today()),month(today()),1)&":"&EOMONTH(date(year(today()),month(today()),1),0))),"ddd")="Sun"))
Al usar nuestro sitio, usted reconoce que ha leído y comprende nuestra Política de Cookies y Política de Privacidad.
Licensed under cc by-sa 3.0 with attribution required.