Přihlásit se pomocí účtu Microsoft
Přihlaste se nebo si vytvořte účet.
Dobrý den,
Vyberte jiný účet.
Máte více účtů.
Zvolte účet, pomocí kterého se chcete přihlásit.

Tato část obsahuje odkazy na příklady, které ukazují použití vzorců jazyka DAX v následujících scénářích.

  • Provádění složitých výpočtů

  • Práce s textem a kalendářními daty

  • Podmíněné hodnoty a testování chyb

  • Použití časového rozvědky

  • Řazení a porovnání hodnot

V tomto článku

Začínáme

Navštivte wikiweb Centrum zdrojů daxu, kde najdete nejrůznější informace o jazyku DAX, včetně blogů, ukázek, whitepaperů a videí od předních profesionálů v oboru a Microsoftu.

Scénáře: Provádění složitých výpočtů

Vzorce jazyka DAX mohou provádět složité výpočty, které zahrnují vlastní agregace, filtrování a použití podmíněných hodnot. Tato část obsahuje příklady toho, jak začít s vlastními výpočty.

Vytvoření vlastních výpočtů pro kontingenční tabulku

FUNKCE CALCULATE a CALCULATETABLE jsou výkonné a flexibilní funkce, které jsou užitečné pro definování počítaných polí. Tyto funkce umožňují změnit kontext, ve kterém bude výpočet proveden. Můžete také přizpůsobit typ agregace nebo matematické operace, kterou chcete provést. Příklady najdete v následujících tématech.

Použití filtru u vzorce

Na většině míst, kde funkce jazyka DAX přebírá tabulku jako argument, můžete obvykle předat filtrované tabulce, a to buď pomocí funkce FILTER místo názvu tabulky, nebo zadáním výrazu filtru jako jednoho z argumentů funkce. Následující témata obsahují příklady, jak vytvořit filtry a jak filtry ovlivňují výsledky vzorců. Další informace najdete v tématu Filtrování dat ve vzorcích jazyka DAX.

Funkce FILTER umožňuje zadat kritéria filtru pomocí výrazu, zatímco ostatní funkce jsou navržené speciálně pro filtrování prázdných hodnot.

Selektivně odebrat filtry a vytvořit dynamický poměr

Vytvořením dynamických filtrů ve vzorcích můžete snadno odpovídat na následující otázky:

  • Jaký byl přínos prodeje aktuálního produktu k celkovým prodejem za rok?

  • Kolik toto rozdělení přispělo k celkovým ziskům za všechny provozní roky ve srovnání s jinými divizemi?

Na vzorce, které používáte v kontingenční tabulce, může mít kontext kontingenční tabulky vliv, ale kontext můžete selektivně změnit přidáním nebo odebráním filtrů. Příklad v tématu ALL vám ukáže, jak to udělat. Pokud chcete zjistit poměr prodejů konkrétního prodejce k prodeji pro všechny prodejce, vytvoříte míru, která vypočítá hodnotu aktuálního kontextu vydělenou hodnotou kontextu ALL.

Téma ALLEXCEPT obsahuje příklad, jak selektivně vymazat filtry ve vzorci. Oba příklady vás proknou změnou výsledků v závislosti na návrhu kontingenční tabulky.

Další příklady výpočtu poměrů a procent najdete v následujících tématech:

Použití hodnoty z vnější smyčky

Kromě použití hodnot z aktuálního kontextu ve výpočtech může jazyk DAX použít hodnotu z předchozí smyčky při vytváření sady souvisejících výpočtů. Následující téma obsahuje návod, jak vytvořit vzorec, který odkazuje na hodnotu z vnější smyčky. Funkce EARLIER podporuje až dvě úrovně vnořených smyček.

Další informace o kontextech řádků a souvisejících tabulkách a použití tohoto konceptu ve vzorcích najdete v tématu Kontext ve vzorcích jazyka DAX.

Scénáře: Práce s textem a kalendářními daty

Tato část obsahuje odkazy na referenční témata jazyka DAX, která obsahují příklady běžných scénářů práce s textem, extrahování a vytváření hodnot data a času nebo vytváření hodnot na základě podmínky.

Vytvoření klíčového sloupce zřetězením

Power Pivot nepovoluje složené klíče. Proto pokud máte ve zdroji dat složené klíče, budete je možná muset zkombinovat do jednoho klíčového sloupce. Následující téma obsahuje jeden příklad vytvoření počítaného sloupce založeného na složeném klíči.

Vytvoření data založeného na datech extrahovaných z textového data

Power Pivot k práci s SQL Server používá datový typ datum a čas. Pokud tedy externí data obsahují kalendářní data, která jsou formátovaná různě – například v případě, že jsou data napsaná v regionálním formátu kalendářních dat, který datový modul Power Pivot nerozpozná, nebo pokud vaše data používají celočíselné náhradní klíče – budete možná muset použít vzorec jazyka DAX k extrahování částí kalendářních dat a potom jejich vytvoření do platného vyjádření data a času.

Pokud máte například sloupec kalendářních dat, která jsou znázorněná jako celé číslo a pak se naimportují jako textový řetězec, můžete řetězec převést na hodnotu data a času pomocí následujícího vzorce:

=DATUM(VPRAVO([Hodnota1];4);LEFT([Hodnota1];2);MID([Hodnota1];2))

Hodnota1:

Výsledek

01032009

1/3/2009

12132008

12/13/2008

06252007

6/25/2007

Následující témata obsahují další informace o funkcích používaných k extrahování a vytváření kalendářních dat.

Definování vlastního formátu data nebo čísla

Pokud data obsahují kalendářní data nebo čísla, která nejsou v jednom ze standardních Windows formátech textu, můžete definovat vlastní formát, který zajistí správné zpracování hodnot. Tyto formáty se používají při převodu hodnot na řetězce nebo z řetězců. Následující témata obsahují také podrobný seznam předdefinovaných formátů, které jsou k dispozici pro práci s kalendářními daty a čísly.

Změna datových typů pomocí vzorce

V Power Pivot je datový typ výstupu určen zdrojovými sloupci a nemůžete explicitně zadat datový typ výsledku, protože optimální datový typ je určen Power Pivot. K manipulaci s výstupním datovým typem Power Pivot ale můžete použít implicitní převody datových typů Power Pivot. 

  • Pokud chcete převést datum nebo číslo na číslo, vynásobte 1,0. Následující vzorec například vypočítá aktuální datum minus 3 dny a potom vysídí odpovídající celočíselnou hodnotu.

    =(DNES()-3)*1,0

  • Pokud chcete převést hodnotu data, čísla nebo měny na řetězec, zřetězit hodnotu prázdným řetězcem. Například následující vzorec vrátí dnešní datum jako řetězec.

    =""& DNES()

K zajištění vrácení určitého datového typu můžete použít také následující funkce:

Převedení skutečných čísel na celá čísla

Scénář: Podmíněné hodnoty a testování chyb

Podobně Excel dax obsahuje funkce, které umožňují testovat hodnoty v datech a vracet jinou hodnotu na základě podmínky. Můžete třeba vytvořit počítaný sloupec, který označí prodejce jako Upřednostňovaný nebo Hodnota v závislosti na roční výši prodeje. Funkce, které testuje hodnoty, jsou užitečné také pro kontrolu oblasti nebo typu hodnot, aby se zabránilo chybám neočekávaných dat v přerušování výpočtů.

Vytvoření hodnoty na základě podmínky

Vnořené podmínky KDYŽ můžete použít k testování hodnot a podmíněnému generování nových hodnot. Následující témata obsahují několik jednoduchých příkladů podmíněného zpracování a podmíněných hodnot:

Testování chyb ve vzorci

Na Excel, nemůžete mít platné hodnoty v jednom řádku počítaného sloupce a neplatné hodnoty v jiném řádku. To znamená, že pokud dojde k chybě v libovolné části sloupce Power Pivot, je celý sloupec označen příznakem chyby, takže je nutné vždy opravit chyby vzorců, které mají za následek neplatné hodnoty.

Pokud třeba vytvoříte vzorec, který se vydělí nulou, může se zobrazit výsledek nekonečna nebo chyba. Některé vzorce se také nezdaří, pokud funkce narazí na prázdnou hodnotu, když očekává číselnou hodnotu. Při vývoji datového modelu je nejlepší povolit, aby se chyby objevily, abyste mohli kliknout na zprávu a vyřešit problém. Při publikování sešitů byste ale měli zahrnout zpracování chyb, abyste zabránili tomu, aby neočekávané hodnoty způsobující selhání výpočtů.

Abyste se vyhnuli vrácení chyb v počítané sloupci, použijte k testování chyb kombinaci logických a informačních funkcí a vždy vrátíte platné hodnoty. Následující témata obsahují několik jednoduchých příkladů, jak to udělat v jazyku DAX:

Scénáře: Použití funkce Time Intelligence

Funkce časového rozhraní DAX obsahují funkce, které vám pomůžou načíst data nebo rozsahy dat z dat. Tato kalendářní data nebo rozsahy dat pak můžete použít k výpočtu hodnot v podobných obdobích. Funkce časového rozvědky zahrnují také funkce, které pracují se standardními intervaly dat, které umožňují porovnávat hodnoty v měsících, letech nebo čtvrtletích. Můžete také vytvořit vzorec, který porovnává hodnoty pro první a poslední datum zadaného období.

Seznam všech funkcí časového rozvědky najdete v tématu Funkce časového rozvědky (DAX). Tipy k efektivnímu používání kalendářních dat a časů v Power Pivot najdete v tématu Data v Power Pivotu.

Výpočet kumulativních prodejů

Následující témata obsahují příklady výpočtu konečných a počátečních zůstatků. Příklady umožňují vytvářet průběžné zůstatky v různých intervalech, jako jsou dny, měsíce, čtvrtletí nebo roky.

Porovnání hodnot v čase

Následující témata obsahují příklady porovnání součtů v různých časových obdobích. Výchozí časová období podporovaná jazykem DAX jsou měsíce, čtvrtletí a roky.

Výpočet hodnoty nad vlastním rozsahem dat

V následujících tématech najdete příklady, jak načíst vlastní rozsahy dat, například prvních 15 dní po zahájení propagační akce prodeje.

Pokud k načtení vlastní sady dat použijete funkce časové řady, můžete tuto sadu kalendářních dat použít jako vstup pro funkci, která provádí výpočty, a vytvořit vlastní agregace v časových obdobích. Příklad toho, jak to udělat, najdete v následujícím tématu:

  • Funkce PARALLELPERIOD

    Poznámka: Pokud nepotřebujete zadat vlastní rozsah dat, ale pracujete se standardními účetními jednotkami, jako jsou měsíce, čtvrtletí nebo roky, doporučujeme provádět výpočty pomocí funkcí časové řady navržených k tomuto účelu, jako je TOTALQTD, TOTALMTD, TOTALQTD atd.

Scénáře: Řazení a porovnání hodnot

Pokud chcete zobrazit jenom první n počet položek ve sloupci nebo kontingenční tabulce, máte několik možností:

  • Funkce v aplikaci Excel 2010 můžete použít k vytvoření horního filtru. Můžete taky vybrat počet nejvyšších nebo nejnižších hodnot v kontingenční tabulce. První část této části popisuje, jak filtrovat prvních 10 položek v kontingenční tabulce. Další informace najdete v Excel dokumentaci.

  • Můžete vytvořit vzorec, který dynamicky řadí hodnoty, a potom filtrovat podle hodnot pořadí, nebo použít hodnotu pořadí jako průřez. Druhá část této části popisuje, jak vytvořit tento vzorec a potom použít toto pořadí v průřezu.

Každá metoda má své výhody a nevýhody.

  • Filtr Excel je snadno použitelný, ale filtr je výhradně pro účely zobrazení. Pokud se změní data podkladová pro kontingenční tabulku, je nutné kontingenční tabulku aktualizovat ručně, aby se změny v kontingenční tabulce viděli. Pokud potřebujete dynamicky pracovat s pořadím, můžete pomocí jazyka DAX vytvořit vzorec, který porovnává hodnoty s jinými hodnotami ve sloupci.

  • Vzorec jazyka DAX je výkonnější. Kromě toho můžete přidáním hodnoty pořadí do průřezu jednoduše kliknout na průřez a změnit tak počet zobrazených nejvyšších hodnot. Výpočty jsou ale výpočetně nákladné a tato metoda se nemusí hodí pro tabulky s mnoha řádky.

Zobrazení jenom deseti nejvyšších položek v kontingenční tabulce

Zobrazení nejvyšších nebo nejnižších hodnot v kontingenční tabulce

  1. V kontingenční tabulce klikněte na šipku dolů v záhlaví Popisky řádků.

  2. Vyberte Filtry hodnot> 10 nejlepších.

  3. V dialogovém okně Filtr 10 < sloupce>vyberte sloupec, který chcete seřadit, a počet hodnot takto:

    1. Výběrem možnosti Nahoru zobrazíte buňky s nejvyššími hodnotami nebo dolní buňky s nejnižšími hodnotami.

    2. Zadejte počet nejvyšších nebo nejnižších hodnot, které chcete zobrazit. Výchozí hodnota je 10.

    3. Vyberte způsob zobrazení hodnot:

Název

Popis

Položky

Tuto možnost vyberte, pokud chcete kontingenční tabulku filtrovat tak, aby se podle jejich hodnot zobrazuje jenom seznam nejvyšších nebo nejnižších položek.

Procenta:

Tuto možnost vyberte, pokud chcete kontingenční tabulku filtrovat tak, aby se zobrazí jenom položky, které sečtou do zadaného procenta.

Součet

Tuto možnost vyberte, pokud chcete zobrazit součet hodnot pro horní nebo dolní položky.

  1. Vyberte sloupec obsahující hodnoty, které chcete seřadit.

  2. Klikněte na OK.

Dynamické řazení položek pomocí vzorce

Následující téma obsahuje příklad použití jazyka DAX k vytvoření pořadí, které je uložené v počítané sloupci. Vzhledem k tomu, že vzorce jazyka DAX se počítají dynamicky, můžete si vždycky být jistí, že pořadí je správné, i když se podkladová data změnila. Vzhledem k tomu, že vzorec se používá v počítané sloupci, můžete použít pořadí v průřezu a pak vybrat 5 nejvyšších, horních 10 nebo dokonce 100 nejvyšších hodnot.

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.

Byly tyto informace užitečné?

Jak jste spokojeni s kvalitou jazyka?
Co ovlivnilo váš názor?
Po stisknutí tlačítka pro odeslání se vaše zpětná vazba použije k vylepšování produktů a služeb Microsoftu. Váš správce IT bude moci tato data shromažďovat. Prohlášení o zásadách ochrany osobních údajů.

Děkujeme vám za zpětnou vazbu.

×