Obsah
Tento návod ukazuje, ako môžete využiť novú funkciu SEQUENCE na rýchle vytvorenie zoznamu dátumov v programe Excel a použiť funkciu AutoFill na vyplnenie stĺpca dátumami, pracovnými dňami, mesiacmi alebo rokmi.
Donedávna existoval len jeden jednoduchý spôsob generovania dátumov v programe Excel - funkcia Automatické vypĺňanie. Zavedenie novej funkcie dynamického poľa SEQUENCE umožnilo vytvoriť sériu dátumov aj pomocou vzorca. V tomto návode sa podrobne pozrieme na obe metódy, aby ste si mohli vybrať tú, ktorá vám najlepšie vyhovuje.
Ako vyplniť dátumové rady v programe Excel
Keď potrebujete vyplniť stĺpec s dátumami v programe Excel, najrýchlejšie je použiť funkciu Automatické vypĺňanie.
Automatické vyplnenie série dátumov v programe Excel
Vyplnenie stĺpca alebo riadku dátumami, ktoré sa zväčšujú o jeden deň, je veľmi jednoduché:
- Do prvej bunky zadajte počiatočný dátum.
- Vyberte bunku s počiatočným dátumom a potiahnite rukoväť výplne (malý zelený štvorček v pravom dolnom rohu) smerom nadol alebo doprava.
Excel okamžite vygeneruje sériu dátumov v rovnakom formáte ako prvý dátum, ktorý ste zadali ručne.
Vyplňte stĺpec s dňami v týždni, mesiacmi alebo rokmi
Ak chcete vytvoriť sériu pracovných dní, mesiacov alebo rokov, vykonajte jednu z nasledujúcich činností:
- Vyplňte stĺpec s postupnými dátumami, ako je popísané vyššie. Potom kliknite na tlačidlo Možnosti automatického vypĺňania a vyberte požadovanú možnosť, napríklad Naplňte mesiace :
- Alebo môžete zadať prvý dátum, kliknúť pravým tlačidlom myši na rukoväť výplne, podržať a pretiahnuť cez toľko buniek, koľko potrebujete. Po uvoľnení tlačidla myši sa zobrazí kontextová ponuka, ktorá vám umožní vybrať potrebnú možnosť, Naplňte roky v našom prípade:
Vyplniť sériu dátumov s prírastkom N dní
Automatické generovanie série dní, pracovných dní, mesiacov alebo rokov s konkrétny krok , musíte urobiť toto:
- Do prvej bunky zadajte počiatočný dátum.
- Vyberte danú bunku, kliknite pravým tlačidlom myši na rukoväť výplne, potiahnite ju cez toľko buniek, koľko potrebujete, a potom ju uvoľnite.
- Vo vyskakovacej ponuke vyberte Séria (posledná položka).
- V Séria v dialógovom okne vyberte Dátumová jednotka záujmu a nastaviť Hodnota kroku .
- Kliknite na tlačidlo OK.
Ďalšie príklady nájdete v časti Ako vložiť a automaticky vyplniť dátumy v programe Excel.
Ako vytvoriť postupnosť dátumov v programe Excel pomocou vzorca
V jednom z predchádzajúcich návodov sme sa pozreli na to, ako použiť novú funkciu dynamického poľa SEQUENCE na generovanie číselnej postupnosti. Keďže interne sú v programe Excel dátumy uložené ako poradové čísla, funkcia môže ľahko vytvoriť aj dátumovú postupnosť. Stačí správne nakonfigurovať argumenty, ako je vysvetlené v nasledujúcich príkladoch.
Poznámka: Všetky tu uvedené vzorce fungujú len v najnovších verziách programu Excel 365, ktoré podporujú dynamické polia. V preddynamických verziách programov Excel 2019, Excel 2016 a Excel 2013 používajte funkciu automatického vypĺňania, ako je uvedené v prvej časti tohto návodu.
Vytvorenie série dátumov v programe Excel
Ak chcete v programe Excel vytvoriť postupnosť dátumov, nastavte nasledujúce argumenty funkcie SEQUENCE:
SEQUENCE(riadky, [stĺpce], [začiatok], [krok])- Riadky - počet riadkov, ktoré sa majú vyplniť dátumami.
- Stĺpce - počet stĺpcov, ktoré sa majú vyplniť dátumami.
- Štart - počiatočný dátum vo formáte, ktorému Excel rozumie, napríklad "8/1/2020" alebo "1-Aug 2020". Aby ste sa vyhli chybám, môžete dátum zadať pomocou funkcie DATE, napríklad DATE(2020, 8, 1).
- Krok - prírastok pre každý nasledujúci dátum v sekvencii.
Ak chcete napríklad vytvoriť zoznam 10 dátumov začínajúcich 1. augusta 2020 a zvyšujúcich sa o 1 deň, vzorec je:
=SEKVENCIA(10, 1, "8/1/2020", 1)
alebo
=SEKVENCIA(10, 1, DATE(2020, 8, 1), 1)
Prípadne môžete zadať počet dátumov (B1), dátum začiatku (B2) a krok (B3) do preddefinovaných buniek a odkazovať na tieto bunky vo vzorci. Keďže vytvárame zoznam, číslo stĺpcov (1) je pevne zadané:
=SEKVENCIA(B1, 1, B2, B3)
Do najvyššej bunky (v našom prípade A6) zadajte nasledujúci vzorec, stlačte kláves Enter a výsledky sa automaticky rozlejú do určeného počtu riadkov a stĺpcov.
Poznámka. Pri predvolenom nastavení Všeobecné formát, výsledky sa zobrazia ako poradové čísla. Ak ich chcete zobraziť správne, nezabudnite použiť formát Dátum na všetky bunky v rozsahu rozsypu.
Vytvorte sériu pracovných dní v programe Excel
Ak chcete získať iba sériu pracovných dní, zabaľte SEQUENCE do funkcie WORKDAY alebo WORKDAY.INTL týmto spôsobom:
PRACOVNÝ DEŇ( start_date -1, SEQUENCE( no_of_days ))Keďže funkcia WORKDAY pripočíta k dátumu začiatku počet dní zadaný v druhom argumente, odčítame od neho 1, aby bol do výsledkov zahrnutý samotný dátum začiatku.
Napríklad na vytvorenie postupnosti pracovných dní začínajúcich dátumom v B2 sa použije vzorec:
=PRACOVNÝ DEŇ(B2-1, SEKVENCIA(B1))
Kde B1 je veľkosť sekvencie.
Tipy a poznámky:
- Ak je dátum začiatku v sobotu alebo v nedeľu, séria sa začne v nasledujúci pracovný deň.
- Funkcia WORKDAY programu Excel predpokladá, že sobota a nedeľa sú víkendy. Ak chcete nastaviť vlastné víkendy a sviatky, použite namiesto toho funkciu WORKDAY.INTL.
Generovanie poradia mesiacov v programe Excel
Ak chcete vytvoriť sériu dátumov zväčšenú o jeden mesiac, môžete použiť tento všeobecný vzorec:
DÁTUM( rok , SEKVENCIA(12), deň )V tomto prípade vložíte cieľový rok do 1. argumentu a deň do 3. argumentu. 2. argument funkcia SEQUENCE vráti postupné čísla od 1 do 12. Na základe uvedených parametrov funkcia DATE vytvorí sériu dátumov, ako je znázornené v ľavej časti nasledujúceho obrázka:
=DATE(2020, SEQUENCE(12), 1)
Zobrazenie iba názvy mesiacov , nastavte jeden z nižšie uvedených vlastných formátov dátumu pre rozsah úniku:
- mmm - skrátená forma ako Jan , Február , Mar , atď.
- mmmm - plná forma ako Január , Február , Marec , atď.
V dôsledku toho sa v bunkách zobrazia len názvy mesiacov, ale základné hodnoty budú stále plné dátumy. V oboch sériách na snímke nižšie si všimnite predvolené zarovnanie vpravo, ktoré je typické pre čísla a dátumy v programe Excel:
Generovanie postupnosti dátumov, ktorá sa zväčšuje o jeden mesiac a začína konkrétnym dátumom , použite funkciu SEQUENCE spolu s funkciou EDATE:
EDATE( start_date , SEKVENCIA(12, 1, 0))Funkcia EDATE vráti dátum, ktorý je zadaný počet mesiacov pred alebo po počiatočnom dátume. A funkcia SEQUENCE vytvorí pole 12 čísel (alebo toľko, koľko zadáte), aby sa funkcia EDATE posunula dopredu v jednomesačných krokoch. Všimnite si, že funkcia spustenie je nastavený na 0, aby sa do výsledkov zahrnul dátum začiatku.
S dátumom začiatku v B1 má vzorec tento tvar:
=EDATE(B1, SEQUENCE(12, 1, 0))
Poznámka: Po vyplnení vzorca nezabudnite na výsledky použiť vhodný formát dátumu, aby sa správne zobrazovali.
Vytvorenie postupnosti rokov v programe Excel
Ak chcete vytvoriť sériu dátumov zväčšenú o rok, použite tento všeobecný vzorec:
DATE(SEQUENCE( n , 1, ROK( start_date )), MONTH( start_date ), DAY( start_date ))Kde n je počet dátumov, ktoré chcete vygenerovať.
V tomto prípade funkcia DATE(rok, mesiac, deň) vytvorí dátum týmto spôsobom:
- Rok je vrátená funkciou SEQUENCE, ktorá je nakonfigurovaná na generovanie n riadky po 1 stĺpci čísel, počnúc hodnotou roku z start_date .
- Mesiac a deň hodnoty sú prevzaté priamo z dátumu začiatku.
Ak napríklad zadáte počiatočný dátum v B1, nasledujúci vzorec vypíše sériu 10 dátumov v jednoročných krokoch:
=DATE(SEQUENCE(10, 1, YEAR(B1)), MONTH(B1), DAY(B1))
Po naformátovaní na dátumy budú výsledky vyzerať takto:
Generovanie časovej postupnosti v programe Excel
Keďže časy sú v programe Excel uložené ako desatinné čísla predstavujúce zlomok dňa, funkcia SEQUENCE môže s časmi pracovať priamo.
Za predpokladu, že čas začiatku je v B1, môžete použiť jeden z nasledujúcich vzorcov na vytvorenie série 10-krát. Rozdiel je len v krok argument. Keďže deň má 24 hodín, použite 1/24 na zvýšenie o hodinu, 1/48 na zvýšenie o 30 minút atď.
S odstupom 30 minút:
=SEKVENCIA(10, 1, B1, 1/48)
S odstupom 1 hodiny:
=SEKVENCIA(10, 1, B1, 1/24)
S odstupom 2 hodín:
=SEKVENCIA(10, 1, B1, 1/12)
Na nasledujúcom obrázku sú zobrazené výsledky:
Ak sa nechcete zdržiavať ručným výpočtom kroku, môžete ho definovať pomocou funkcie TIME:
SEQUENCE(riadky, stĺpce, začiatok, TIME( hodina , minúta , druhý ))V tomto príklade zadáme všetky premenné do samostatných buniek, ako je znázornené na snímke obrazovky nižšie. A potom môžete použiť nasledujúci vzorec na vytvorenie časového radu s ľubovoľnou veľkosťou kroku prírastku, ktorú zadáte v bunkách E2 (hodiny), E3 (minúty) a E4 (sekundy):
=SEKVENCIA(B2, B3, B4, TIME(E2, E3, E4))
Ako vytvoriť mesačný kalendár v programe Excel
V tomto poslednom príklade použijeme funkciu SEQUENCE spolu s funkciami DATEVALUE a WEEKDAY na vytvorenie mesačného kalendára, ktorý sa bude automaticky aktualizovať na základe zadaného roku a mesiaca.
Vzorec v A5 je nasledovný:
=SEQUENCE(6, 7, DATEVALUE("1/"&B2&"/"&B1) - WEEKDAY(DATEVALUE("1/"&B2&"/"&B1)) + 1, 1)
Ako tento vzorec funguje:
Pomocou funkcie SEQUENCE sa vytvorí pole dátumov so 6 riadkami (maximálny možný počet týždňov v mesiaci) a 7 stĺpcami (počet dní v týždni) s prírastkom 1 deň. riadky , stĺpce a krok argumenty nevyvolávajú žiadne otázky.
Najzložitejšia časť spustenie argument. Nemôžeme začať náš kalendár 1. dňom cieľového mesiaca, pretože nevieme, ktorý deň v týždni to je. Preto použijeme nasledujúci vzorec na nájdenie prvej nedele pred 1. dňom zadaného mesiaca a roka:
DATEVALUE("1/"&B2&"/"&B1) - WEEKDAY(DATEVALUE("1/"&B2&"/"&B1)) + 1
Prvá funkcia DATEVALUE vráti poradové číslo, ktoré v internom systéme Excelu predstavuje 1. deň mesiaca v B2 a rok v B1. V našom prípade je to 44044, čo zodpovedá 1. augustu 2020. V tomto okamihu máme:
44044 - WEEKDAY(DATEVALUE("1/"&B2&"/"&B1)) + 1
Funkcia WEEKDAY vráti deň v týždni zodpovedajúci 1. dňu cieľového mesiaca ako číslo od 1 (nedeľa) do 7 (sobota). V našom prípade je to 7, pretože 1. augusta 2020 je sobota. A náš vzorec sa redukuje na:
44044 - 7 + 1
44044 - 7 je 4403, čo zodpovedá sobote 25. júla 2020. Keďže potrebujeme nedeľu, pridáme korekciu +1.
Takto získame jednoduchý vzorec, ktorý vypíše pole sériových čísel začínajúcich číslom 4404:
=SEKVENCIA(6, 7, 4404, 1)
Výsledky naformátujte ako dátumy a získate kalendár zobrazený na obrázku vyššie. Môžete napríklad použiť jeden z nasledujúcich formátov dátumu:
- d-mmm-yy na zobrazenie dátumov ako 1. augusta 20
- mmm d na zobrazenie mesiaca a dňa ako 20. augusta
- d zobraziť iba deň
Počkajte, ale naším cieľom je vytvoriť mesačný kalendár. Prečo sa zobrazujú niektoré dátumy predchádzajúceho a nasledujúceho mesiaca? Ak chcete tieto nepodstatné dátumy skryť, nastavte pravidlo podmieneného formátovania pomocou nižšie uvedeného vzorca a použite biele písmo farba:
=MONTH(A5)MONTH(DATEVALUE($B$2 & "1"))
Kde A5 je ľavá bunka vášho kalendára a B2 je cieľový mesiac.
Podrobný postup nájdete v časti Ako vytvoriť pravidlo podmieneného formátovania založené na vzorci v programe Excel.
Takto môžete v programe Excel vytvoriť postupnosť dátumov. Ďakujem vám za prečítanie a dúfam, že sa uvidíme na našom blogu budúci týždeň!
Cvičebnica na stiahnutie
Poradie dátumov v programe Excel - príklady vzorcov (.xlsx súbor)