A DAX felhasználási helyzetei a Power Pivot programban

Hatókör
Microsoft 365-höz készült Excel Excel 2024 Excel 2021 Excel 2019 Excel 2016

Ebben a szakaszban olyan példákra mutató hivatkozásokat talál, amelyek a DAX-képletek használatát mutatják be az alábbi esetekben.

  • Összetett számítások végrehajtása
  • Szöveg és dátumok használata
  • Feltételes értékek és hibavizsgálat
  • Időintelligencia használata
  • Értékek rangsorolása és összehasonlítása

Tartalom

Első lépések

Keresse fel a DAX-erőforrásközpont wikijét , ahol mindenféle információt találhat a DAX eszközről, többek között az iparág vezető szakértőitől és a Microsofttól származó blogokat, mintákat, tanulmányokat és videókat.

Esetek: Összetett számítások végrehajtása

A DAX-képletek összetett számításokat is végrehajthatnak, beleértve az egyéni összesítéseket, a szűrést és a feltételes értékek használatát. Ebben a szakaszban az egyéni számítások használatának első lépéseit ismertető példákat talál.

Egyéni számítások létrehozása kimutatáshoz

A CALCULATE és a CALCULATETABLE hatékony, rugalmas függvény, amely jól használható a számított mezők meghatározásához. Ezekkel a függvényekkel módosíthatja azt a környezetet, amelyben a számítást végre szeretné hajtani. Testre szabhatja a végrehajtandó összegzés vagy matematikai művelet típusát is. Az alábbi témakörök példákat is tartalmaznak.

Szűrő alkalmazása képletre

A legtöbb helyen, ahol egy DAX-függvény táblázatot használ argumentumként, általában átadhat helyette egy szűrt táblázatot is, vagy a táblázatnév helyett a FILTER függvénnyel, vagy úgy, hogy a függvényargumentumok egyikeként megad egy szűrőkifejezést. Az alábbi témakörök azt mutatják be, hogyan hozhat létre szűrőket, és hogyan befolyásolják a szűrők a képletek eredményét. További információ: Adatok szűrése a DAX-képletekben.

A SZŰRŐ függvény használatával kifejezéssel adhatók meg szűrési feltételek, a többi függvény pedig kifejezetten az üres értékek kiszűrésére szolgál.

Szűrők szelektív eltávolítása dinamikus arány létrehozásához

Ha dinamikus szűrőket hoz létre a képletekben, az alábbihoz hasonló kérdésekre is egyszerű választ kaphat:

  • Mekkora volt az aktuális termék értékesítésének hozzájárulása az év teljes értékesítéséhez?
  • Mennyiben járult hozzá ez a divízió az összes működési év teljes nyereségéhez más részlegekhez képest?

A kimutatásokban használt képletekre hatással lehet a kimutatás környezete, de a környezet szelektíven módosítható szűrők hozzáadásával vagy eltávolításával. A MIND témakörben szereplő példa bemutatja, hogyan teheti meg ezt. Ha szeretné kiszámítani egy adott viszonteladó értékesítéseinek az összes viszonteladó értékesítéséhez viszonyított arányát, hozzon létre egy mértéket, amely kiszámítja az aktuális környezet értékét elosztva az ALL környezet értékével.

Az ALLEXCEPT témakör bemutatja, hogyan lehet szelektíven törölni egy képlet szűrőit. Mindkét példa bemutatja, hogy az eredmények hogyan változnak a kimutatás felépítésétől függően.

Az arányok és százalékértékek számítására vonatkozó további példákért lásd az alábbi témaköröket:

Külső hurokból származó érték használata

Amellett, hogy a jelenlegi környezet értékeit felhasználja a számításokban, a DAX egy korábbi ciklus értékeit is felhasználhatja kapcsolódó számítások csoportjának létrehozásához. A következő témakör bemutatja, hogyan hozhat létre olyan képletet, amely külső hurokból hivatkozik egy értékre. A EARLIER függvény a beágyazott hurkok két szintjéig használható.

A sorkörnyezetről és a kapcsolódó táblázatokról, valamint a fogalom képletekben való használatáról a Környezet DAX-képletekben című témakörben talál további információt.

Esetek: Szöveg és dátumok használata

Ez a szakasz olyan DAX-referenciatémakörökre mutató hivatkozásokat tartalmaz, amelyek példákat tartalmaznak a szöveggel végzett munkához, a dátum- és időértékek kinyeréséhez és összeállításához, vagy az értékek feltétel alapján történő létrehozásához.

Kulcsoszlop létrehozása összefűzéssel

A Power Pivot nem támogatja az összetett kulcsok használatát; Ezért ha összetett kulcsok vannak az adatforrásban, előfordulhat, hogy egyetlen kulcsoszlopban kell egyesítenie azokat. A következő témakör egy példát mutat be arra, hogyan hozhat létre összetett kulcson alapuló számított oszlopot.

Compose a date (szöveges dátumból kinyert dátumrészekből)

A Power Pivot SQL Server dátum/idő adattípust használ a dátumokkal való munkához, ezért ha a külső adatok eltérő formátumú dátumokat tartalmaznak – például ha a dátumok olyan regionális dátumformátumban íródtak, amelyet a Power Pivot adatmotorja nem ismer fel, vagy ha az adatok helyettesítő kulcsokat használnak –, előfordulhat, hogy egy DAX-képletet kell használnia a dátumrészek kinyeréséhez, majd a részekből egy érvényes dátummá alakított időreprezentáció.

Ha például van egy egész számként megjelenített, majd szöveges karakterláncként importált dátumokat tartalmazó oszlopa, a következő képlettel dátum/idő értékké alakíthatja a karakterláncot:

=DÁTUM(JOBB([érték1];4);BAL([érték1],2),KÖZÉP([Érték1],2))

Érték1: Eredmény
01032009 1/3/2009
12132008 12/13/2008
06252007 6/25/2007

A következő témakörök további információt nyújtanak a dátumok kinyeréséhez és összeállításához használt függvényekről.

Egyéni dátum- és számformátum megadása

Ha az adatok olyan dátumokat vagy számokat tartalmaznak, amelyek nincsenek a Windows egyik szabványos szövegformátumában ábrázolva, egyéni formátum megadásával biztosíthatja az értékek helyes kezelését. Ezek a formátumok akkor használhatók, amikor értékeket karakterláncokká vagy karakterláncokká alakítanak. Az alábbi témakörök a dátumokkal és számokkal való munkához használható előre definiált formátumok részletes listáját is tartalmazzák.

Adattípusok módosítása képlet használatával

A Power Pivotban a kimenet adattípusát a forrásoszlopok határozzák meg, és nem adhatja meg explicit módon az eredmény adattípusát, mivel az optimális adattípust a Power Pivot határozza meg. A Power Pivot által végrehajtott implicit adattípus-átalakításokkal azonban módosíthatja a kimeneti adattípust. 

  • Dátum vagy számkarakterlánc számmá alakításához szorozzon 1,0-val. A következő képlet például kiszámítja az aktuális dátumot mínusz 3 nap, majd eredményül adja a megfelelő egész számot.
    =(MA()-3)*1.0
  • Dátum, szám vagy pénznem karakterláncká alakításához az értéket üres karakterlánccal kell összefűznie. A következő képlet például karakterláncként adja vissza az aktuális dátumot.
    =""& MA()

Az alábbi függvények szintén használhatók egy adott adattípus visszaadásának biztosítására:

Valós számok átalakítása egész számokká

Eset: Feltételes értékek beállítása és hibatesztelés

Az Excelhez hasonlóan a DAX is tartalmaz olyan függvényeket, amelyekkel az adatokban lévő értékeket vizsgálhatja, és egy feltétel alapján más értéket adhat vissza. Létrehozhat például egy számított oszlopot, amely az éves értékesítési összegtől függően Preferált vagy Érték címkével látja el a viszonteladókat. Az értékeket tesztelő függvények az értéktartomány vagy -típus ellenőrzésére is alkalmasak, így megakadályozható, hogy váratlan adathibák miatt megszakítsák a számításokat.

Érték létrehozása feltétel alapján

Beágyazott HA feltételekkel tesztelheti az értékeket, és feltételesen új értékeket generálhat. Az alábbi témakörök néhány egyszerű példát mutatnak be a feltételes feldolgozásra és a feltételes értékekre:

Képletbeli hibák vizsgálata

Az Exceltől eltérően a számított oszlopok egyik sorában nem lehetnek érvényes értékek, egy másikban pedig érvénytelen értékek. Ez azt jelenti, hogy ha a Power Pivot-oszlop bármelyik részében hiba található, a program a teljes oszlopot hibásként jelöli meg, ezért az érvénytelen értékeket eredményező képlethibákat mindig javítani kell.

Ha például nullával osztó képletet hoz létre, a végtelen eredményt vagy hibát kaphat. Egyes képletek akkor is hibát adnak meg, ha a függvény üres értéket talál, holott numerikus értéket vár. Az adatmodell fejlesztése során a legjobb, ha hagyja, hogy megjelenjenek a hibák, hogy az üzenetre kattintva elháríthassa a problémát. Munkafüzetek közzétételekor azonban célszerű hibakezelést használni, nehogy a váratlan értékek miatt meghiúsuljanak a számítások.

Ha el szeretné kerülni a hibák eredményét a számított oszlopban, logikai és információs függvények kombinációját kell használnia a hibák ellenőrzésére, így az eredmény mindig érvényes értéket ad vissza. Az alábbi témakörök egyszerű példákkal mutatják be ennek elvégzését a DAX nyelven:

Esetek: Időintelligencia használata

A DAX időintelligencia-függvényei olyan függvényeket tartalmaznak, amelyek megkönnyítik dátumok vagy dátumtartományok kinyerését az adatokból. Ezután a dátumok vagy dátumtartományok segítségével hasonló időszakok értékeit számíthatja ki. Az időintelligencia-függvények között találhatók olyan függvények is, amelyek szabványos dátumidőközöket használnak, így lehetővé teszik a hónapokon, éveken vagy negyedévek értékeinek összehasonlítását. Létrehozhat olyan képletet is, amely egy adott időszak első és utolsó napjára vonatkozó értékeket hasonlít össze.

Az időintelligencia-függvények listája az Időintelligencia-függvények (DAX) című témakörben található. A dátumok és időpontok Power Pivot-elemzésekben való hatékony használatához a Dátumok a Power Pivotban című témakörben olvashat.

Halmozott értékesítés kiszámítása

A következő témakörök a záró és a nyitóegyenleg kiszámítására vonatkozó példákat tartalmaznak. A példákkal különböző intervallumokra, például napokra, hónapokra, negyedévekre vagy évekre bontva hozhat létre folyó egyenlegeket.

Értékek időbeli összehasonlítása

Az alábbi témakörök példákkal mutatják be, hogyan hasonlíthatók össze különböző időszakok összegei. A DAX által támogatott alapértelmezett időszakok a hónapok, a negyedévek és az évek.

Érték kiszámítása egyéni dátumtartományon belül

Az alábbi témakörökben bemutatjuk, hogyan olvashat be például egyéni dátumtartományokat, például egy értékesítési promóció kezdete utáni első 15 napot.

Ha időintelligencia-függvényeket használ egy egyéni dátumkészlet beolvasásához, a dátumkészletet felhasználhatja egy olyan függvény bemeneteként, amely számításokat végez, így egyéni összesítéseket hozhat létre időszakokon átívelő egyéni összesítésekkel. Ennek módjáról a következő témakörben talál egy példát:

  • PARALLELPERIOD függvény

    Megjegyzés

    Ha nem kell egyéni dátumtartományt megadnia, de szabványos könyvelési egységeket (például hónapokat, negyedéveket vagy éveket) használ, javasoljuk, hogy a számításokat az erre a célra tervezett időintelligencia-függvényekkel végezze el, mint például TOTALQTD, TOTALMTD, TOTALQTD stb.

Esetek: Értékek rangsorolása és összehasonlítása

Ha egy oszlopban vagy kimutatásban csak a legnagyobb n számú elemet szeretné megjeleníteni, több lehetőség közül választhat:

  • Az Excel funkcióival felső szűrőt hozhat létre. A kimutatásokban legfelső vagy alsó értékeket is kijelölhet. A szakasz első része azt ismerteti, hogy miként szűrhet az első 10 elemre egy kimutatásban. További információt az Excel dokumentációjában talál.
  • Létrehozhat egy olyan képletet, amely dinamikusan rangsorolja az értékeket, majd sorba rendezi az értékeket, illetve felhasználhatja a rangsorolási értéket szeletelőként. A szakasz második része bemutatja, hogyan hozhatja létre a képletet, majd hogyan használhatja ezt a rangsort a szeletelőben.

Mindegyik módszernek vannak előnyei és hátrányai.

  • Az Excel felső szűrője egyszerűen használható, de kizárólag megjelenítési célokat szolgál. Ha a kimutatás alapjául szolgáló adatok megváltoznak, a változások megjelenítéséhez manuálisan kell frissítenie a kimutatást. Ha dinamikusan kell dolgoznia a rangsorolásokkal, a DAX segítségével létrehozhat egy olyan képletet, amely összehasonlítja az értékeket egy oszlop más értékeivel.
  • A DAX-képlet hatékonyabb; Ezenkívül a rangsorolási érték szeletelőhöz történő hozzáadásával egyszerűen a szeletelőre kattintva módosíthatja a megjelenített csúcsértékek számát. A számítások azonban költségesek, és ez a módszer nem biztos, hogy megfelelő a sok sort tartalmazó táblázatokhoz.

Csak az első tíz elem megjelenítése a kimutatásban

Az első vagy utolsó érték megjelenítése a kimutatásban
  1. A kimutatásban kattintson a Sorcímkék címsorban látható lefelé mutató nyílra.
  2. Azelső 10értékszűrő> kiválasztása
  3. Az Első 10 oszlop <neve> párbeszédpanelen válassza ki a rangsorolni kívánt oszlopot és az értékek számát az alábbiak szerint:
    1. A Fent elemre kattintva megjelenítheti a legmagasabb értékű cellákat, az Utolsó elemet választva pedig a legalacsonyabb értéket tartalmazó cellákat láthatja.
    2. Írja be a megjeleníteni kívánt legfelső vagy alsó értékek számát. Az alapértelmezett érték 10.
    3. Válassza ki, hogyan jelenjenek meg az értékek:
NameDescriptionItems(NévLeírásElemek) Ezzel a beállítással szűrheti a kimutatást, hogy csak az értékük szerint jelenjen meg a legfelső vagy legalsó tételek listája. Százalék jelölőnégyzet bejelölése esetén úgy szűrheti a kimutatást, hogy csak azok az elemek jelenjenek meg, amelyek összege a megadott százalékot adja. ÖsszegJelölje be ezt a jelölőnégyzetet, ha az első vagy utolsó tétel értékeinek összegét szeretné megjeleníteni.
  1. Jelölje ki a rangsorolni kívánt értékeket tartalmazó oszlopot.
  2. Kattintson az OK gombra.

Elemek dinamikus rendezése képlet használatával

A következő témakör egy példát mutat be arra, hogyan hozhat létre számított oszlopban tárolt rangsort a DAX használatával. Mivel a DAX-képletek kiszámítása dinamikus, mindig biztos lehet a rangsorolás helyességében, még akkor is, ha a mögöttes adatok megváltoztak. Ezenkívül, mivel a képlet számított oszlopban szerepel, a rangsort szeletelőben használva kijelölheti az első 5, a 10 első vagy akár a száz első értéket is.