Tabla calendario completa con una sola fórmula de desbordamiento

Héctor lanza el reto: ¿se puede crear una tabla calendario completa (año, mes, nombre del mes, día, nombre del día, fecha formateada) con una sola fórmula que se desborde automáticamente? Lleva un día intentándolo con 6 fórmulas separadas.

Nacho comparte la fórmula base usando LET + SECUENCIA + TEXTO + APILARH:

``
=LET(
Ano; 2024;
Primerdia; FECHA(Ano; 1; 1);
UltimoDia; FECHA(Ano; 12; 31);
Calendario; SECUENCIA(UltimoDia - Primerdia + 1; 1; Primerdia; 1);
Atributos; {"aaaa"\"mm"\"mmmm"\"d"\"dddd"\"dddd, d \d\e mmmm \d\el aaaa"};
Columnas; TEXTO(Calendario; Atributos);
APILARH(Calendario; Columnas)
)
`

El truco clave: TEXTO(Calendario; Atributos) con un array horizontal de formatos genera todas las columnas de golpe. Cada formato de texto se aplica a todos los días simultáneamente.

La comunidad extiende la fórmula con campos adicionales:

Trimestre (Perú): usando COINCIDIRX con el mes del período:

`
=COINCIDIRX(MES(_fecha); {3; 6; 9; 12}; 1)
`

Quincena — tres enfoques distintos:

Con MAP + COINCIDIRX + FIN.MES (Perú):
`
=MAP(fechas; LAMBDA(r;
2(MES(r) - 1) + COINCIDIRX(r; FIN.MES(r; {-1; 0}) + {15; 0}; 1)
))
`

Con MAP simplificado (México):
`
=MAP(fechas; LAMBDA(r; 2(MES(r) - 1) + (DIA(r) > 15) + 1))
`

Sin MAP ni LAMBDA (John): la versión más corta:
`
=2 * MES(fechas) + (DIA(fechas) > 15) - 1
``

Un caso que empieza con una fórmula potente de Nacho y la comunidad la lleva al siguiente nivel añadiendo trimestres, semestres y quincenas.

Más contenido de Excel en InflueXcel