Applies ToExcel pro Microsoft 365 Excel 2024 Excel 2021 Excel 2019 Excel 2016

Jazyk DAX (Data Analysis Expressions) obsahuje 35 funkcí určených speciálně pro agregaci a porovnávání dat v průběhu času. Na rozdíl od funkcí data a času jazyka DAX nemají funkce časového měřítka v Excelu nic podobného. Je to proto, že funkce časového měřítka pracují s daty, která se neustále mění, v závislosti na kontextu, který vyberete ve vizualizacích kontingenčních tabulek a Power View.

Abyste mohli pracovat s funkcemi časového měřítka, musíte mít v datovém modelu obsaženou tabulku kalendářních dat. Tabulka kalendářních dat musí obsahovat sloupec s jedním řádkem pro každý den v roce zahrnutých v datech. Tento sloupec se považuje za sloupec Date (i když může být pojmenován, jak chcete). Mnoho funkcí časového měřítka vyžaduje sloupec kalendářního data, aby bylo možné počítat podle kalendářních dat, která vyberete jako pole v sestavě. Pokud máte například míru, která vypočítá zůstatek na konci čtvrtletí pomocí funkce CLOSINGBALANCEQTR, aby Power Pivot věděl, kdy konec čtvrtletí skutečně je, musí odkazovat na sloupec kalendářních dat v tabulce kalendářních dat, aby věděl, kdy čtvrtletí začíná a končí. Další informace o tabulkách kalendářních dat najdete v tématu Principy a vytváření tabulek kalendářních dat v Power Pivotu v Excelu.

Funkce

Funkce, které vrací jedno datum

Funkce v této kategorii vrátí jedno datum. Výsledek se pak dá použít jako argumenty pro jiné funkce.

První dvě funkce v této kategorii vrátí první nebo poslední datum v Date_Column v aktuálním kontextu. To může být užitečné, když chcete najít první nebo poslední datum, kdy jste měli transakci určitého typu. Tyto funkce mají pouze jeden argument– název sloupce kalendářního data v tabulce kalendářních dat.

Další dvě funkce v této kategorii najdou první nebo poslední datum (nebo jakoukoli jinou hodnotu sloupce), kde má výraz neprázdnou hodnotu. Nejčastěji se používá v situacích, jako je inventář, kdy chcete získat poslední množství zásob a nevíte, kdy byl poslední inventář pořízen.

Šest dalších funkcí, které vrací jedno datum, je funkce, které vrací první nebo poslední datum měsíce, čtvrtletí nebo roku v aktuálním kontextu výpočtu.

Funkce, které vracejí tabulku kalendářních dat

K dispozici je šestnáct funkcí časového měřítka, které vracejí tabulku kalendářních dat. Nejčastěji se tyto funkce používají jako argument SetFilter pro funkci CALCULATE . Stejně jako všechny funkce časového měřítka v jazyce DAX má každá funkce jako jeden ze svých argumentů sloupec kalendářního data.

Prvních osm funkcí v této kategorii začíná sloupcem kalendářního data v aktuálním kontextu. Pokud například použijete míru v kontingenční tabulce, může být na popiscích sloupců nebo řádků měsíc nebo rok. Efektem net je, že sloupec kalendářního data je filtrovaný tak, aby zahrnoval pouze kalendářní data pro aktuální kontext. Od tohoto aktuálního kontextu pak těchto osm funkcí vypočítá předchozí (nebo další) den, měsíc, čtvrtletí nebo rok a vrátí tato data ve formě tabulky s jedním sloupcem. Funkce "předchozí" fungují zpětně od prvního data v aktuálním kontextu a funkce "next" se posunují od posledního data v aktuálním kontextu.

Další čtyři funkce v této kategorii jsou podobné, ale místo výpočtu předchozího (nebo dalšího) období vypočítají sadu kalendářních dat v období, které je "od měsíce k datu" (nebo čtvrtletí k datu nebo od začátku roku nebo ve stejném období předchozího roku). Všechny tyto funkce provádějí výpočty s použitím posledního data v aktuálním kontextu. Všimněte si, že funkce SAMEPERIODLASTYEAR vyžaduje, aby aktuální kontext obsahoval souvislou sadu kalendářních dat. Pokud aktuální kontext není souvislou sadou kalendářních dat, vrátí funkce SAMEPERIODLASTYEAR chybu.

Poslední čtyři funkce v této kategorii jsou o něco složitější a také o něco výkonnější. Tyto funkce slouží k přechodu ze sady kalendářních dat v aktuálním kontextu na novou sadu kalendářních dat.

  • DATEADD (Date_Column, Number_of_Intervals, interval)

  • DATESBETWEEN (Date_Column, Start_Date, End_Date)

  • DATESINPERIOD (Date_Column, Start_Date, Number_of_Intervals, interval)

DATESBETWEEN vypočítá sadu kalendářních dat mezi zadaným počátečním a koncovým datem. Zbývající tři funkce posunou určitý počet časových intervalů od aktuálního kontextu. Interval může být den, měsíc, čtvrtletí nebo rok. Tyto funkce usnadňují přesunutí časového intervalu výpočtu o některou z následujících možností:

  • Zpět dva roky

  • Zpět jeden měsíc

  • Jděte dopředu o tři čtvrtiny

  • Zpět 14 dní

  • Přejít dopředu o 28 dní

V každém případě stačí zadat, který interval a kolik z těchto intervalů se má posunout. Kladný interval se posune dopředu v čase, zatímco záporný interval se přesune zpět v čase. Samotný interval je určen klíčovým slovem DEN, MĚSÍC, ČTVRTLETÍ nebo ROK. Tato klíčová slova nejsou řetězce, takže by neměla být v uvozovkách.

Funkce, které vyhodnocují výrazy za časové období

Tato kategorie funkcí vyhodnocuje výraz za zadané časové období. Totéž můžete provést pomocí funkce CALCULATE a dalších funkcí časového měřítka. Příklad:

= TOTALMTD (Výraz, Date_Column [, SetFilter])

je přesně stejný jako:

= CALCULATE (Expression, DATESMTD (Date_Column)[, SetFilter])

Je ale jednodušší používat tyto funkce časového měřítka, pokud jsou vhodné pro problém, který je potřeba vyřešit:

  • TOTALMTD (Výraz, Date_Column [, SetFilter])

  • TOTALQTD (Výraz, Date_Column [, SetFilter])

  • TOTALYTD (Výraz, Date_Column [, SetFilter] [,YE_Date]) *

V této kategorii je také skupina funkcí, které počítají počáteční a konečné zůstatky. Existují určité koncepty, kterým byste měli s těmito konkrétními funkcemi rozumět. Za prvé, jak můžete považovat za zřejmé, počáteční zůstatek pro libovolné období je stejný jako konečný zůstatek za předchozí období. Konečný zůstatek zahrnuje všechna data do konce období, zatímco počáteční zůstatek nezahrnuje žádná data z aktuálního období.

Tyto funkce vždy vrátí hodnotu výrazu vyhodnoceného pro určitý bod v čase. Bod v čase, na který nám záleží, je vždy poslední možnou hodnotou data v kalendářním období. Počáteční zůstatek vychází z posledního data předchozího období, zatímco konečný zůstatek vychází z posledního data v aktuálním období. Aktuální období je vždy určeno posledním datem v kontextu aktuálního data.

Další zdroje

Články: Principy a vytváření tabulek kalendářních dat v Power Pivotu v Excelu

Referenční informace: Referenční informace k funkcím jazyka DAXna Office.com

Ukázky: Modelování a analýza dat o zisku a ztrátě pomocí doplňku Microsoft PowerPivot v Excelu

Potřebujete další pomoc?

Chcete další možnosti?

Prozkoumejte výhody předplatného, projděte si školicí kurzy, zjistěte, jak zabezpečit své zařízení a mnohem více.

Komunity vám pomohou klást otázky a odpovídat na ně, poskytovat zpětnou vazbu a vyslechnout odborníky s bohatými znalostmi.