martes, 9 de junio de 2020

EXCEL: Secuencia de días

Excel formula: Sequence of days

Fórmula genérica

=SEQUENCE(days,1,start_date,step)

Explicación

Para generar una serie de fechas por día, puede usar la función SECUENCIA. En el ejemplo que se muestra, la fórmula en E5 es:

=SEQUENCE(12,1,C4,1)

que genera una serie de 12 fechas, comenzando con el 1 de mayo de 2019, la fecha en C4.

Cómo funciona esta fórmula

La función SECUENCIA es una función de matriz dinámica que puede generar múltiples resultados. Cuando se usa solo en la hoja de trabajo, SECUENCIA genera una serie de resultados que se "derraman" en la hoja de trabajo en un "rango de derrame".

SECUENCIA puede generar resultados en filas, columnas o filas y columnas. En este ejemplo, estamos pidiendo una secuencia de un conjunto de números de 12 filas por 1 columna, comenzando con la fecha en C4 y aumentando en 1. Porque las fechas en Excel son solo números de serie, y la fecha en C4 es equivalente a 43586, SECUENCIA genera una matriz como esta:

{43586;43587;43588;43589;43590;43591;43592;43593;43594;43595;43596;43597}

que se derrama en el rango E5: E16. Cuando se formatea como fechas, estos valores muestran 12 fechas consecutivas que comienzan con el 1 de mayo de 2019 y terminan con el 12 de mayo de 2019.

Solo días laborables

Para usar SECUENCIA para generar una serie de fechas que son solo días laborables, puede ajustar SECUENCIA en la función DIA.LAB o DIA.LAB.INTL. En el ejemplo que se muestra, la fórmula en G5 es:

{=DIA.LAB.INTL(C4-1,SEQUENCE(12))}

Nota: esta es una fórmula de matriz y debe ingresarse con control + shift + enter. Además, debido a que esta es una fórmula de matriz de celdas múltiples, primero debe seleccionar las 12 celdas para ingresar o editar la fórmula.

Aquí, dentro de la función DIA.LAB, primero restamos 1 día de la fecha de inicio. Hacemos esto para forzar a DIA.LAB.INTL a evaluar la fecha de inicio y comenzar la secuencia en la fecha de inicio.

A continuación, usamos SECUENCIA para generar 12 números secuenciales:

Debido a que las columnas, los argumentos de inicio y de paso son opcionales, esto genera una matriz como esta:

{1;2;3;4;5;6;7;8;9;10;11;12}

Estos son los números proporcionados como argumento de "días" para DIA.LAB.INTL. En cada nueva fila, DIA.LAB.INTL calcula un día laboral n días en el futuro utilizando la matriz entregada por SEQUENCE. DIA.LAB.INTL automáticamente asume que los sábados y domingos son "fines de semana" (no días laborables) por lo que estas fechas están excluidas de los resultados. DIA.LAB.INTL también se puede configurar para manejar fines de semana y días festivos personalizados, como se explica aquí.


Comentarios en Facebook


0 comentarios:

Copyright © 2021 TRUJILLOSOFT