Fórmula genérica
=FILTER(rng1,MONTH(rng2)=7,"No data")
Resumen
Para filtrar datos para incluir datos basados en fechas, puede usar la función FILTRO con una de las funciones de fecha de Excel. En el ejemplo que se muestra, la fórmula en F5 es:
=FILTER(data,MONTH(date)=7,"No data")
donde "datos" (B5: E15) y "fecha" (C5: C15) son rangos con nombre. El resultado devuelto por FILTER solo incluye datos del mes de julio.
Explicación
Esta fórmula se basa en la función FILTRO para recuperar datos basados en una prueba lógica creada con la función MES. El argumento de la matriz se proporciona como el rango con nombre "datos", que contiene el conjunto completo de datos sin encabezados. El argumento de inclusión se construye con la función MES:
MONTH(date)=7
Aquí, el mes recibe el rango C5: C15. Dado que el rango contiene 11 celdas, MES devuelve una matriz con 11 resultados:
(6;7;7;7;7;8;8;8;8;8;8)
Luego, cada resultado se compara con 7, y esta operación crea una matriz de valores VERDADERO y FALSO, que se entrega a la función FILTRO como el argumento "incluir".
(FALSE;TRUE;TRUE;TRUE;TRUE;FALSE;FALSE;FALSE;FALSE;FALSE;FALSE)
Solo las filas en las que el resultado es VERDADERO se convierten en el resultado final. El argumento "if_empty" se establece en "Sin datos" en caso de que no se encuentren datos coincidentes.
Filtrar por mes y año
Para filtrar por mes y año, puede construir una fórmula usando lógica booleana como esta:
=FILTER(data,(MONTH(date)=7)*(YEAR(date)=2019),"No data")
Aunque los valores de mes y año están codificados arriba en la fórmula, se pueden reemplazar fácilmente con referencias de celda.