Obsah
Zatiaľ čo Microsoft Excel poskytuje celý rad funkcií na prácu s dňami v týždni, mesiacmi a rokmi, pre týždne je k dispozícii len jedna funkcia - WEEKNUM. Ak teda hľadáte spôsob, ako získať číslo týždňa z dátumu, WEEKNUM je funkcia, ktorú chcete.
V tomto krátkom návode si stručne povieme o syntaxi a argumentoch funkcie Excel WEEKNUM a potom si preberieme niekoľko príkladov vzorcov, ktoré demonštrujú, ako môžete použiť funkciu WEEKNUM na výpočet čísel týždňov v pracovných listoch programu Excel.
Funkcia WEEKNUM aplikácie Excel - syntax
Funkcia WEEKNUM sa v programe Excel používa na vrátenie čísla týždňa konkrétneho dátumu v roku (číslo v rozmedzí od 1 do 54). Má dva argumenty, 1. je povinný a 2. je nepovinný:
WEEKNUM(serial_number, [return_type])- Sériové_číslo - akýkoľvek dátum v rámci týždňa, ktorého číslo sa snažíte nájsť. Môže to byť odkaz na bunku obsahujúcu dátum, dátum zadaný pomocou funkcie DATE alebo vrátený iným vzorcom.
- Return_type (nepovinné) - číslo, ktoré určuje, ktorým dňom začína týždeň. Ak sa vynechá, použije sa predvolený typ 1 (týždeň začína v nedeľu).
Tu je kompletný zoznam return_type
hodnoty podporované vo vzorcoch WEEKNUM.
Return_type | Týždeň sa začína |
1 alebo 17 alebo vynechané | Nedeľa |
2 alebo 11 | Pondelok |
12 | Utorok |
13 | Streda |
14 | Štvrtok |
15 | Piatok |
16 | Sobota |
21 | Pondelok (používa sa v systéme 2, podrobnosti nájdete nižšie.) |
Vo funkcii WEEKNUM sú dve rôzne systémy číslovania týždňov sa používajú:
- Systém 1. Týždeň obsahujúci 1. január sa považuje za 1. týždeň v roku a čísluje sa ako 1. týždeň. V tomto systéme sa týždeň tradične začína v nedeľu.
- Systém 2. Ide o systém ISO pre dátumy týždňov, ktorý je súčasťou normy ISO 8601 pre dátumy a časy. V tomto systéme sa týždeň začína v pondelok a týždeň obsahujúci prvý štvrtok v roku sa považuje za týždeň 1. Všeobecne je známy ako európsky systém číslovania týždňov a používa sa najmä v štátnej správe a v podnikaní pre fiškálne roky a meranie času.
Všetky vyššie uvedené typy návratov sa vzťahujú na systém 1 okrem typu 21, ktorý sa používa v systéme 2.
Poznámka: V programe Excel 2007 a starších verziách sú k dispozícii len možnosti 1 a 2. Typy návratov 11 až 21 sú podporované len v programoch Excel 2010 a Excel 2013.
Vzorce programu Excel WEEKNUM na prevod dátumu na číslo týždňa (od 1 do 54)
Nasledujúci obrázok ukazuje, ako môžete získať čísla týždňov z dátumov pomocou najjednoduchšieho =WEEKNUM(A2)
vzorec:
Vo vyššie uvedenom vzorci sa return_type
argument je vynechaný, čo znamená, že sa použije predvolený typ 1 - týždeň začínajúci v nedeľu.
Ak by ste radšej začali iným dňom v týždni, napríklad pondelkom, použite v druhom argumente číslo 2:
=WEEKNUM(A2, 2)
Namiesto odkazu na bunku môžete dátum zadať priamo vo vzorci, napríklad pomocou funkcie DATE(rok, mesiac, deň):
=TÝŽDENNÉ ČÍSLO(DATE(2015,4,15), 2)
Uvedený vzorec vráti číslo 16, čo je číslo týždňa, ktorý obsahuje 15. apríl 2015, pričom týždeň začína v pondelok.
V reálnych situáciách sa funkcia Excel WEEKNUM používa samostatne len zriedkavo. Najčastejšie sa používa v kombinácii s inými funkciami na vykonávanie rôznych výpočtov na základe čísla týždňa, ako je uvedené v ďalších príkladoch.
Ako previesť číslo týždňa na dátum v programe Excel
Ako ste práve videli, nie je problém premeniť dátum na číslo týždňa pomocou funkcie Excel WEEKNUM. Ale čo ak hľadáte opak, t. j. premenu čísla týždňa na dátum? Žiaľ, neexistuje žiadna funkcia Excelu, ktorá by to dokázala urobiť priamo. Budeme si teda musieť vytvoriť vlastné vzorce.
Predpokladajme, že máte rok v bunke A2 a číslo týždňa v bunke B2 a teraz chcete vypočítať dátumy začiatku a konca tohto týždňa.
Poznámka: Tento príklad vzorca je založený na číslach týždňa ISO, pričom týždeň začína v pondelok.
Vzorec na vrátenie Dátum začiatku týždňa je nasledovný:
=DÁTUM(A2, 1, -2) - DEŇ V TÝŽDNI(DÁTUM(A2, 1, 3)) + B2 * 7
Kde A2 je rok a B2 je číslo týždňa.
Upozorňujeme, že vzorec vracia dátum ako poradové číslo, a ak ho chcete zobraziť ako dátum, musíte príslušne naformátovať bunku. Podrobné pokyny nájdete v časti Zmena formátu dátumu v programe Excel. A tu je výsledok vrátený vzorcom:
Samozrejme, vzorec na prevod čísla týždňa na dátum nie je triviálny a môže chvíľu trvať, kým sa zorientujete v logike. Každopádne sa budem snažiť poskytnúť zmysluplné vysvetlenie pre tých, ktorí sú zvedaví, ako sa dostať k podstate.
Ako vidíte, náš vzorec sa skladá z 2 častí:
DATE(A2, 1, -2) - WEEKDAY(DATE(A2, 1, 3))
- vypočíta dátum posledného pondelka predchádzajúceho roka.B2 * 7
- sčíta počet týždňov vynásobený 7 (počet dní v týždni) a získa pondelok (dátum začiatku) príslušného týždňa.
V systéme číslovania týždňov ISO je 1. týždeň týždeň, ktorý obsahuje prvý štvrtok v roku. Prvý pondelok je teda vždy medzi 29. decembrom a 4. januárom. Ak teda chceme nájsť tento dátum, musíme nájsť pondelok bezprostredne pred 5. januárom.
V programe Microsoft Excel môžete z dátumu získať deň v týždni pomocou funkcie WEEKDAY. A na získanie pondelka bezprostredne pred daným dátumom môžete použiť nasledujúci všeobecný vzorec:
= dátum - TÝŽDEŇ( dátum - 2)Ak je naším konečným cieľom nájsť pondelok bezprostredne pred 5. januárom roku v A2, môžeme použiť nasledujúce funkcie DATE:
=DATE(A2,1,5) - WEEKDAY(DATE(A2,1,3))
V skutočnosti však nepotrebujeme prvý pondelok tohto roka, ale skôr posledný pondelok predchádzajúceho roka. Takže musíte od 5. januára odčítať 7 dní, a preto v prvej funkcii DATE dostanete -2:
=DATE(A2,1,-2) - WEEKDAY(DATE(A2,1,3))
V porovnaní so zložitým vzorcom, ktorý ste sa práve naučili, výpočet Dátum ukončenia týždňa je hračka :) Ak chcete získať nedeľu v danom týždni, jednoducho pripočítajte 6 dní k Dátum začiatku , t. j. =D2+6
Prípadne môžete do vzorca priamo doplniť číslo 6:
=DÁTUM(A2, 1, -2) - DEŇ V TÝŽDNI(DÁTUM(A2, 1, 3)) + B2 * 7 + 6
Aby ste sa uistili, že vzorce vždy poskytujú správne dátumy, pozrite sa na nasledujúci obrázok obrazovky. Vzorce Dátum začiatku a Dátum konca, o ktorých sa hovorí vyššie, sú skopírované cez stĺpce D a E:
Ďalšie spôsoby prevodu čísla týždňa na dátum v programe Excel
Ak vyššie uvedený vzorec založený na systéme dátumov v týždňoch ISO nespĺňa vaše požiadavky, vyskúšajte jedno z nasledujúcich riešení.
Vzorec 1. Týždeň obsahujúci január-1 je týždeň 1, týždeň od pondelka do nedele
Ako si pamätáte, predchádzajúci vzorec funguje na základe dátumového systému ISO, kde sa za 1. týždeň považuje prvý štvrtok v roku. Ak pracujete na základe dátumového systému, kde sa za 1. týždeň považuje týždeň obsahujúci 1. január, použite nasledujúce vzorce:
Dátum začiatku:
=DATE(A2,1,1) - WEEKDAY(DATE(A2,1,1),2) + (B2-1)*7 + 1
Dátum ukončenia:
=DÁTUM(A2,1,1)-DEŇ(DÁTUM(A2,1,1),2) + B2*7
Vzorec 2. Týždeň obsahujúci január-1 je týždeň 1, týždeň ne-sobota
Tieto vzorce sú podobné vyššie uvedeným vzorcom s jediným rozdielom, že sú napísané pre týždeň od nedele do soboty.
Dátum začiatku:
=DATE(A2,1,1) - WEEKDAY(DATE(A2,1,1),1) + (B2-1)*7 + 1
Dátum ukončenia:
=DÁTUM(A2,1,1)-DEŇ(DÁTUM(A2,1,1),1) + B2*7
Vzorec 3. Počítanie začína vždy 1. januára, v týždni od pondelka do nedele
Zatiaľ čo predchádzajúce vzorce vracajú pondelok (alebo nedeľu) 1. týždňa bez ohľadu na to, či pripadá na tento alebo predchádzajúci rok, tento vzorec pre dátum začiatku vždy vracia január 1 ako dátum začiatku 1. týždňa bez ohľadu na deň v týždni. Analogicky vzorec pre dátum konca vždy vráti 31. decembra ako dátum konca posledného týždňa v roku bez ohľadu na deň v týždni. Vo všetkých ostatných ohľadoch tieto vzorce fungujú podobne ako vzorec 1 uvedený vyššie.
Dátum začiatku:
=MAX(DATE(A2,1,1), DATE(A2,1,1) - WEEKDAY(DATE(A2,1,1),2) + (B2-1)*7 + 1)
Dátum ukončenia:
=MIN(DATE(A2+1,1,0), DATE(A2,1,1) - WEEKDAY(DATE(A2,1,1),2) + B2*7)
Vzorec 4. Počítanie začína vždy 1. januára, v týždni od nedele do soboty
Na výpočet dátumu začiatku a konca týždňa od nedele do soboty stačí malá úprava vo vyššie uvedených vzorcoch :)
Dátum začiatku:
=MAX(DATE(A2,1,1), DATE(A2,1,1) - WEEKDAY(DATE(A2,1,1),1) + (B2-1)*7 + 1)
Dátum ukončenia:
=MIN(DATE(A2+1,1,0), DATE(A2,1,1) - WEEKDAY(DATE(A2,1,1),1) + B2*7)
Ako získať mesiac z čísla týždňa
Ak chcete získať mesiac zodpovedajúci číslu týždňa, zistite prvý deň v danom týždni, ako je vysvetlené v tomto príklade, a potom tento vzorec vložte do funkcie Excel MONTH takto:
=MESIAC(DÁTUM(A2, 1, -2) - DEŇ V TÝŽDNI(DÁTUM(A2, 1, 3)) + B2 * 7)
Poznámka: Nezabudnite, že uvedený vzorec funguje na základe Dátumový systém týždňa ISO , kde týždeň začína v pondelok a týždeň, ktorý obsahuje prvý štvrtok v roku, sa považuje za 1. týždeň. Napríklad v roku 2016 je prvý štvrtok 7. januára, a preto 1. týždeň začína 4. januára 2016.
Ako získať číslo týždňa v mesiaci (od 1 do 6)
Ak vaša obchodná logika vyžaduje prevod konkrétneho dátumu na číslo týždňa v rámci príslušného mesiaca, môžete použiť kombináciu funkcií WEEKNUM, DATE a MONTH:
Za predpokladu, že bunka A2 obsahuje pôvodný dátum, použite nasledujúci vzorec pre týždeň začínajúci Pondelok (všimnite si 21 v argumente return_type v položke WEEKNUM):
=WEEKNUM($A2,21)-WEEKNUM(DATE(YEAR($A2), MONTH($A2),1),21)+1
Počas týždňa, ktorý sa začína Nedeľa , vynechajte argument return_type:
=TÝŽDENNÉ ČÍSLO($A2)-TÝŽDENNÉ ČÍSLO(DÁTUM(ROK($A2), MESIAC($A2),1))+1
Ako sčítať hodnoty a zistiť priemer podľa čísla týždňa
Keď už viete, ako v programe Excel previesť dátum na číslo týždňa, pozrime sa, ako môžete čísla týždňov používať v iných výpočtoch.
Predpokladajme, že máte k dispozícii mesačné údaje o predaji a chcete zistiť celkovú sumu za každý týždeň.
Na začiatok zistíme číslo týždňa zodpovedajúce každému predaju. Ak sú vaše dátumy v stĺpci A a predaje v stĺpci B, skopírujte =WEEKNUM(A2)
vzorec v stĺpci C začínajúci v bunke C2.
A potom vytvorte zoznam čísel týždňov v inom stĺpci (napríklad v stĺpci E) a vypočítajte predaj za každý týždeň pomocou nasledujúceho vzorca SUMIF:
=SUMIF($C$2:$C$15, $E2, $B$2:$B$15)
Kde E2 je číslo týždňa.
V tomto príklade pracujeme so zoznamom marcových predajov, takže máme čísla týždňov 10 až 14, ako je znázornené na nasledujúcom obrázku:
Podobným spôsobom môžete vypočítať priemerný predaj za daný týždeň:
=PRIEMERIF($C$2:$C$15, $E2, $B$2:$B$15)
Ak sa pomocný stĺpec so vzorcom WEEKNUM nehodí do vášho rozloženia údajov, musím vám s poľutovaním oznámiť, že neexistuje jednoduchý spôsob, ako sa ho zbaviť, pretože WEEKNUM v programe Excel je jednou z tých funkcií, ktoré neprijímajú argumenty rozsahu. Preto ju nemožno použiť v rámci funkcie SUMPRODUCT alebo iného vzorca poľa, ako je funkcia MONTH v podobnom scenári.
Ako zvýrazniť bunky na základe čísla týždňa
Povedzme, že máte dlhý zoznam dátumov v nejakom stĺpci a chcete zvýrazniť len tie, ktoré sa týkajú daného týždňa. Potrebujete len pravidlo podmieneného formátovania so vzorcom WEEKNUM podobným tomuto:
=WEEKNUM($A2)=10
Ako je znázornené na snímke obrazovky nižšie, pravidlo zvýrazňuje predaje, ktoré boli uskutočnené v 10. týždni, čo je prvý týždeň v marci 2015. Keďže sa pravidlo vzťahuje na A2:B15, zvýrazňuje hodnoty v oboch stĺpcoch. Viac informácií o vytváraní pravidiel podmieneného formátovania sa dozviete v tomto návode: Podmienené formátovanie programu Excel na základe hodnoty inej bunky.
Takto môžete v Exceli vypočítať čísla týždňov, previesť číslo týždňa na dátum a získať číslo týždňa z dátumu. Dúfam, že vzorce WEEKNUM, ktoré ste sa dnes naučili, sa vám budú hodiť vo vašich pracovných listoch. V ďalšom tutoriáli si povieme o výpočte veku a rokov v Exceli. Ďakujem vám za prečítanie a dúfam, že sa uvidíme budúci týždeň!