Táboa de contidos
O titorial mostra como pode aproveitar a nova función SECUENCIA para xerar rapidamente unha lista de datas en Excel e utilizar a función Enchemento automático para encher unha columna con datas, días laborables, meses ou anos.
Ata hai pouco, só había un xeito sinxelo de xerar datas en Excel: a función de Enchemento automático. A introdución da nova función SEQUENCE de matriz dinámica tamén permitiu facer unha serie de datas cunha fórmula. Este titorial analiza en profundidade os dous métodos para que poidas escoller o que máis che funcione.
Como encher series de datas en Excel
Cando cómpre encher unha columna con datas en Excel, o xeito máis rápido é empregar a función de enchemento automático.
Encher automaticamente unha serie de datas en Excel
Encher unha columna ou fila con datas que aumentan en un día é moi sinxelo:
- Escriba a data inicial na primeira cela.
- Seleccione a cela coa data inicial e arrastre o controlador de recheo (un pequeno cadrado verde na parte inferior). -esquina dereita) abaixo ou á dereita.
Excel xerará inmediatamente unha serie de datas co mesmo formato que a primeira data que escribiu manualmente.
Encha unha columna con días laborables, meses ou anos
Para crear unha serie de días laborables, meses ou anos, realice unha das seguintes accións:
- Encha unha columna con datas secuenciais como se describe anteriormente. Despois diso, faga clic no botón Opcións de enchemento automático e escolla oopción desexada, diga Encher os meses :
- Ou pode introducir a súa primeira data, prema co botón dereito do rato no controlador de recheo, manteña premido e arrastre a través de tantas celas segundo sexa necesario. Cando soltas o botón do rato, aparecerá un menú contextual que che permitirá seleccionar a opción necesaria, Encher anos no noso caso:
Enche unha serie de datas incrementando en N días
Para xerar automaticamente unha serie de días, días laborables, meses ou anos cun paso específico , isto é o que debes facer:
- Introduza a data inicial na primeira cela.
- Seleccione esa cela, faga clic co botón dereito no controlador de recheo, arrástrea por tantas celas como sexa necesario e, a continuación, solte.
- No menú emerxente, escolla Serie (o último elemento).
- No cadro de diálogo Serie , seleccione a Unidade de data de interese e establece o Valor do paso .
- Fai clic en Aceptar.
Para obter máis exemplos, consulta Como inserir e completar automaticamente datas en Excel.
Como facer unha secuencia de datas en Excel cunha fórmula
Nun dos tutoriais anteriores, analizamos como usar a nova función SEQUENCE de matriz dinámica para xerar unha secuencia numérica. Debido a que internamente en Excel as datas almacénanse como números de serie, a función tamén pode producir facilmente unha serie de datas. Todo o que tes que facer é configurar correctamente os argumentos tal e como se explica nos seguintes exemplos.
Nota. Todas as fórmulas discutidas aquí só funcionan noversións máis recentes de Excel 365 que admiten matrices dinámicas. En Excel 2019, Excel 2016 e Excel 2013 pre-dinámicos, use a función Enchemento automático como se mostra na primeira parte deste titorial.
Cree unha serie de datas en Excel
Para xerar un secuencia de datas en Excel, configure os seguintes argumentos da función SEQUENCE:
SEQUENCE(filas, [columnas], [inicio], [paso])- Filas - o número de filas para cubrir con datas.
- Columnas : o número de columnas para cubrir con datas.
- Inicio : a data de inicio no formato que Excel pode entender, como "8/1/2020" ou "1-Aug-2020". Para evitar erros, pode indicar a data mediante a función DATE como DATA(2020, 8, 1).
- Paso : o incremento para cada data posterior nunha secuencia.
Por exemplo, para facer unha lista de 10 datas a partir do 1 de agosto de 2020 e aumentando 1 día, a fórmula é:
=SEQUENCE(10, 1, "8/1/2020", 1)
ou
=SEQUENCE(10, 1, DATE(2020, 8, 1), 1)
Como alternativa, pode introducir o número de datas (B1), a data de inicio (B2) e o paso (B3) nas celas predefinidas e facer referencia a esas celas na súa fórmula. Xa que estamos xerando unha lista, o número de columnas (1) está codificado:
=SEQUENCE(B1, 1, B2, B3)
Escriba a fórmula a continuación na cela máis alta (A6 no noso caso), prema a tecla Intro e os resultados verterán automaticamente polo número especificado de filas e columnas.
Nota. Coa opción predeterminada Xeneral formato, os resultados aparecerán como números de serie. Para que se mostren correctamente, asegúrese de aplicar o formato Data a todas as celas do intervalo de derrame.
Fai unha serie de días laborables en Excel
Para obter só unha serie de días laborables, envolve SEQUENCE na función WORKDAY ou WORKDAY.INTL deste xeito:
WORKDAY( start_date -1, SEQUENCE( no_of_days ))Como a función WORKDAY engade o número de días especificado no segundo argumento á data de inicio, restamos 1 para que a propia data de inicio se inclúa no resultados.
Por exemplo, para xerar unha secuencia de días laborables que comezan na data en B2, a fórmula é:
=WORKDAY(B2-1, SEQUENCE(B1))
Onde B1 é o tamaño da secuencia.
Consellos e notas:
- Se a data de inicio é sábado ou domingo, a serie comezará o seguinte día hábil.
- A función Excel WORKDAY asume que sábado e domingo son fins de semana. Para configurar fins de semana e festivos personalizados, utiliza a función WORKDAY.INTL.
Xera unha secuencia de meses en Excel
Para crear unha serie de datas incrementadas nun mes, podes usar esta fórmula xenérica:
DATA( ano , SEQUENCE(12), día )Neste caso, pon o ano de destino no primeiro argumento e o día no 3o argumento. Para o segundo argumento, a función SEQUENCE devolve números secuenciais do 1 ao 12. En función dos parámetros anteriores, a función DATE produce unha serie dedatas como se mostran na parte esquerda da captura de pantalla a continuación:
=DATE(2020, SEQUENCE(12), 1)
Para mostrar só os nomes de meses , establece un dos formatos de data personalizados a continuación para o intervalo de derrame :
- mmm - forma curta como xan , feb , mar , etc.
- mmmm - completo forma como Xaneiro , Febreiro , Marzo , etc.
Como resultado, só aparecerán os nomes dos meses nas celas, pero os valores subxacentes seguirán sendo datas completas. Nas dúas series da captura de pantalla a continuación, observe o aliñamento dereito predeterminado típico dos números e das datas en Excel:
Para xerar unha secuencia de datas que se incrementa nun mes e comeza cunha data específica , use a función SEQUENCE xunto con EDATE:
EDATE( data_inicio , SEQUENCE(12, 1, 0))A función EDATE devolve unha data que é o número especificado de meses antes ou despois da data de inicio. E a función SEQUENCE produce unha matriz de 12 números (ou tantos como especifique) para forzar a EDATE a avanzar en incrementos dun mes. Ten en conta que o argumento inicio está configurado en 0, polo que a data de inicio se inclúe nos resultados.
Coa data de inicio en B1, a fórmula toma esta forma:
=EDATE(B1, SEQUENCE(12, 1, 0))
Nota. Despois de completar unha fórmula, lembre de aplicar un formato de data axeitado aos resultados para que se mostren correctamente.
Crear unha secuencia de anos en Excel
Para facerunha serie de datas incrementadas por ano, use esta fórmula xenérica:
DATA(SECUENCIA( n , 1, ANO( data_inicio )), MES( data_inicio ), DAY( data_inicio ))Onde n é o número de datas que quere xerar.
Neste caso, a DATA(ano, mes, día) constrúe unha data deste xeito:
- Ano é devolto pola función SEQUENCE que está configurada para xerar n filas por 1 matriz de columnas de números, a partir do valor do ano de data_inicio .
- Os valores do mes e do día extraen directamente desde a data de inicio.
Por exemplo, se introduce a data de inicio en B1, a seguinte fórmula mostrará unha serie de 10 datas en incrementos dun ano:
=DATE(SEQUENCE(10, 1, YEAR(B1)), MONTH(B1), DAY(B1))
Despois ao ter formato como datas, os resultados terán o seguinte aspecto:
Xerar unha secuencia de tempos en Excel
Porque os tempos se almacenan en Excel como números decimais que representan un fracción do día, a función SECUENCIA pode traballar directamente cos tempos.
A supoñendo que a hora de inicio está en B1, podes usar unha das seguintes fórmulas para producir unha serie de 10 veces. A diferenza só está no argumento paso . Como hai 24 horas nun día, use 1/24 para incrementar unha hora, 1/48 para aumentar en 30 minutos, etc.
30 minutos de diferenza:
=SEQUENCE(10, 1, B1, 1/48)
1 hora de diferenza:
=SEQUENCE(10, 1, B1, 1/24)
2 horas de diferenza:
=SEQUENCE(10, 1, B1, 1/12)
A seguinte captura de pantalla mostra oresultados:
Se non queres molestar en calcular o paso manualmente, podes definilo usando a función TIME:
SEQUENCE(filas, columnas, inicio, TEMPO( hora , minuto , segundo ))Para este exemplo, introduciremos todas as variables en celas separadas como se mostra na captura de pantalla a continuación . E entón, podes usar a fórmula a continuación para xerar unha serie temporal con calquera tamaño de paso de incremento que especifiques nas celas E2 (horas), E3 (minutos) e E4 (segundos):
=SEQUENCE(B2, B3, B4, TIME(E2, E3, E4))
Como crear un calendario mensual en Excel
Neste último exemplo, usaremos a función SEQUENCE xunto con DATEVALUE e WEEKDAY para crear un calendario mensual que se actualizará automaticamente en función do ano e do mes que especifique.
A fórmula en A5 é a seguinte:
=SEQUENCE(6, 7, DATEVALUE("1/"&B2&"/"&B1) - WEEKDAY(DATEVALUE("1/"&B2&"/"&B1)) + 1, 1)
Como funciona esta fórmula:
Utiliza a función SEQUENCE para xerar unha matriz de datas de 6 filas (o número máximo posible de semanas nun mes) por 7 columnas (o número de días nunha semana) incrementado en 1 día. Polo tanto, os argumentos filas , columnas e paso non suscitan dúbidas.
A parte máis complicada do argumento inicio . Non podemos comezar o noso calendario co primeiro día do mes de destino porque non sabemos que día da semana é. Entón, usamos a seguinte fórmula para atopar o primeiro domingo antes do día 1 do mes especificado eano:
DATEVALUE("1/"&B2&"/"&B1) - WEEKDAY(DATEVALUE("1/"&B2&"/"&B1)) + 1
A primeira función DATEVALUE devolve un número de serie que, no sistema Excel interno, representa o 1o día do mes en B2 e o ano en B1. No noso caso, é 44044 correspondente ao 1 de agosto de 2020. Neste punto, temos:
44044 - WEEKDAY(DATEVALUE("1/"&B2&"/"&B1)) + 1
A función WEEKDAY devolve o día da semana correspondente ao 1º día do destino. mes como un número do 1 (domingo) ao 7 (sábado). No noso caso, é o 7 porque o 1 de agosto de 2020 é sábado. E a nosa fórmula redúcese a:
44044 - 7 + 1
44044 - 7 é 4403, que corresponde ao sábado 25 de xullo de 2020. Como necesitamos o domingo, engadimos a corrección +1.
Deste xeito, obtemos unha fórmula sinxela que mostra unha matriz de números de serie que comezan por 4404:
=SEQUENCE(6, 7, 4404, 1)
Formatear os resultados como datas e obterás un calendario mostrado en a captura de pantalla anterior. Por exemplo, pode utilizar un dos seguintes formatos de data:
- d-mmm-yy para mostrar datas como 1-ago-20
- mmm d para mostrar mes e día como 20 de agosto
- d para mostrar só o día
Espera, pero pretendemos crear un calendario mensual. Por que aparecen algunhas datas do mes anterior e do seguinte? Para ocultar esas datas irrelevantes, configure unha regra de formato condicional coa seguinte fórmula e aplique a cor fonte branca :
=MONTH(A5)MONTH(DATEVALUE($B$2 & "1"))
Onde A5 é a cela máis á esquerda de o teu calendario e B2 é o obxectivomes.
Para obter os pasos detallados, consulte Como crear unha regra de formato condicional baseada en fórmulas en Excel.
É así como pode xerar unha secuencia de datas en Excel. Grazas por ler e espero verte no noso blog a vindeira semana!
Practica para descargar o libro
Secuencia de datas en Excel: exemplos de fórmulas (ficheiro .xlsx)