Excel

Počítajte deň v týždni medzi dátumami

Count Day Week Between Dates

Excel vzorec: Počítajte deň v týždni medzi dátumamiGenerický vzorec | _+_ | Zhrnutie

Na počítanie pracovných dní (pondelok, piatok, nedeľa atď.) Medzi dvoma dátumami môžete použiť vzorec poľa, ktorý používa niekoľko funkcií: SUMPRODUCT, WEEKDAY, ROW a INDIRECT. V uvedenom príklade je vzorec v bunke E6



= SUMPRODUCT (--( WEEKDAY ( ROW ( INDIRECT (start&':'&end)))=dow))

V generickej verzii vzorca začať = dátum začiatku, koniec = dátum ukončenia a dow = deň v týždni.

ako používať absolútny odkaz na bunku v programe Excel
Vysvetlenie

V jadre tento vzorec používa príponu Funkcia WEEKDAY otestovať niekoľko dátumov, aby ste zistili, či pristanú v daný deň v týždni (dow) a Funkcia SUMPRODUCT sčítať súčet.





Keď zadáte dátum, WEEKDAY jednoducho vráti číslo medzi 1 a 7, ktoré zodpovedá konkrétnemu dňu v týždni. Pri predvolených nastaveniach je 1 = nedeľa a 7 = sobota. Takže 2 = pondelok, 6 = piatok atď.

Trikom v tomto vzorci je porozumieť tomu dátumy v Exceli sú len sériové čísla ktoré sa začínajú 1. januára 1900. Napríklad 1. januára 2016 je poradové číslo 42370 a 8. januára 42377. Dátumy v programe Excel vyzerajú ako dátumy iba vtedy, ak je použitý formát čísla dátumu.



previesť desatinný čas na hodiny a minúty

Otázkou teda je - ako môžete vytvoriť súbor pole dátumov, ktoré môžete vložiť do funkcie WEEKDAY, aby ste zistili zodpovedajúce dni v týždni?

Odpoveď je použiť RIADOK s NEPRIAMY funkcie ako:

 
= SUMPRODUCT (--( WEEKDAY ( ROW ( INDIRECT (B6&':'&C6)))=D6))

INDIRECT umožňuje zreťazené dátumy „42370: 42377“ interpretovať ako čísla riadkov. Potom funkcia ROW vráti pole takto:

 
 ROW ( INDIRECT (date1&':'&date2))

Tieto čísla vyhodnocuje funkcia WEEKDAY ako dátumy a vráti toto pole:

 
{4237042371423724237342374423754237642377}

ktorý sa testuje proti danému dňu v týždni (6 v tomto prípade z D6). Akonáhle sú výsledky testu prevedené na 1 s a 0 s dvojitou spojovníkom, toto pole spracuje SUMPRODUCT:

 
{67123456}

Ktorý vráti 2.

S SEKVENCIOU

S novým Funkcia SEQUENCE Tento vzorec je možné zjednodušiť asi takto:

vytvoriť rozbaľovacie možnosti v programe Excel
 
{10000001}

V tejto verzii používame SEQUENCE na generovanie radu dátumov priamo, bez potreby NEPRIAME alebo ROW.

Vzorce dynamického poľa sú k dispozícii v Office 365 iba. Autor Dave Bruns


^