
Fórmula genérica
=SUMPRODUCT((holidays>=start)*(holidays<=end))
Resumen
Para contar los feriados que ocurren entre dos fechas, puede usar la función SUMPRODUCTO.
En el ejemplo que se muestra, la fórmula en F8 es:
=SUMPRODUCT((B4:B12>=F5)*(B4:B12<=F6))
Explicación
Esta fórmula usa dos expresiones en una sola matriz dentro de la función SUMPRODUCTO.
La primera expresión prueba cada fecha de vacaciones para ver si es mayor o igual que la fecha de inicio en F5:
(B4:B12>=F5)
Esto devuelve una matriz de valores VERDADERO / FALSO como este:
(FALSO; FALSO; FALSO; FALSO; VERDADERO; VERDADERO; VERDADERO; VERDADERO; VERDADERO)
La segunda expresión prueba cada fecha de vacaciones para ver si es menor o igual que la fecha de finalización en F6:
(B4:B12<=F6)
que devuelve una matriz de valores VERDADERO / FALSO como este:
(VERDADERO; VERDADERO; VERDADERO; VERDADERO; VERDADERO; VERDADERO; VERDADERO; VERDADERO; FALSO)
La multiplicación de estas dos matrices convierte automáticamente los valores VERDADERO / FALSO en unos y ceros, lo que da como resultado matrices que se ven así:
=SUMPRODUCT(((0;0;0;0;1;1;1;1;1))*((1;1;1;1;1;1;1;1;0)))
Después de la multiplicación, solo tenemos una matriz como esta:
=SUMPRODUCT((0;0;0;0;1;1;1;1;0))
Finalmente, SUMPRODUCT suma los elementos de la matriz y devuelve 4.
Días festivos solo entre semana
Para contar los días festivos que ocurren solo entre semana (de lunes a viernes), puede extender la fórmula de esta manera:
=SUMPRODUCT((rng>=F5)*(rng<=F6)*(WEEKDAY(rng,2)<6))
donde rng es un rango que contiene fechas de vacaciones.