Dinamikus dashboard cím (Power Pivot)

Pénteken lement az első Power Pivot videókurzus. Sok tapasztalata volt, de a legfontosabb ezek közül, hogy oktatóként sokkal magasabb szinten tudok a kérdésekre válaszolni, mint az élő képzéseken. Míg az élő képzéseken az idő rövidsége miatt általában csak annyit tudok válaszolni, hogy nézz utána itt, vagy indulj erre, addig a videókurzuson tőlem függetlenül tanulnak a diákok, így van időm a kérdésekre kifejtett választ adni. 

Pénteken jött pl. egy olyan kérdés, hogy "Power Pivottal hogyan lehet a dashboardnak olyan címet adni, ami vesszővel elválasztva tartalmazza a szeletelőn kiválasztott elemek neveit? Azaz ha a szeletelőn kiválasztanak mondjuk 3 elemet, akkor a dashboard címében automatikusan jelenjen meg mind a három kiválasztott neve vesszővel elválasztva?"

Mutatom videón, mert úgy könnyebb elmagyarázni:

Az élő képzéseken erre a kérdésre anno eldaráltam a sztenderd megoldást, illetve a megoldásokat, mert több is volt. De a videókurzuson volt időm kitesztelni őket, ezek közül ki tudtam választani a ma legjobbat, és azt kidolgozva tudtam a hallgatók rendelkezésére bocsátani. Óriási nagy minőségbeli ugrás ahhoz képest, amire az élő képzések lehetőséget biztosítanak. A válasz egyébként az alábbihoz hasonló volt:

Ahhoz, hogy a dashboard címe minden kiválasztott érték nevét dinamikusan mutassa, 2 dolog szükséges:

  • Egy olyan számított mező (Measure) amely vesszővel elválasztva visszaadja a kiválasztott elemek nevét, és
  • Egy olyan kockafüggvény, amely kiírja a számított mező értékét

Címsor számított mező

Power BI-ban már régóta tudunk írni olyan számított mezőt, amely visszaadja a szűrt elemek nevét. De az ott használt DAX függvények Excelben sokáig nem működtek, és a címsor számított mezőt csak nagyon kacifántosan, szégyenletes Excel hekkelésekkel tudtuk megvalósítani.

Ma már szerencsére a Power Pivotban is támogatottak a megvalósításhoz szükséges DAX függvények, úgyhogy viszonylag könnyen tudunk olyan számított mezőt készíteni, ami visszaadja a kiválasztott elemek nevét:

=
IF (
    ISCROSSFILTERED ( 'Gyógyszertörzs'[Hatóanyag] );
    CONCATENATEX (
        ALLSELECTED ( 'Gyógyszertörzs'[Hatóanyag] );
        'Gyógyszertörzs'[Hatóanyag];
        ", ";
        'Gyógyszertörzs'[Hatóanyag]
    );
    "Összes termék"
)
 

A képlet működésének magyarázatát itt megtalálja.

Címsort megjelenítő KOCKA() függvény

A fent elkészített számított mező visszaadja a kiválasztott szűrőfeltételeket, a KOCKA.ÉRTÉK() függvénnyel pedig ki tudjuk írni a számított mező dinamikusan változó értékét:

=KOCKA.ÉRTÉK("ThisWorkbookDataModel";"[Measures].[Cím]"; Szeletelő_Hatóanyag)

Ahol a Szeletelő_Hatóanyag a Hatóanyag szeletelő neve. Megj.: Angol Excelt használók a KOCKA.ÉRTÉK() függvény helyett a CUBEVALUE() függvényt használják, a Szeletelő helyére a Slicer szót írják.

Összefoglalva: Ma már Excelben is viszonylag egyszerűen ki tudjuk írni egy szeletelő összes kiválasztott elemét, és hála a videókurzus formátumnak, ma már sokkal egzaktabb választ tudunk adni a tanfolyami résztvevőknek az ilyen és ehhez hasonló kérdésekre. 

Kővári Attila - BI projekt

Önkiszolgáló BI WORKSHOP

Tudjon meg többet az itt elhangzottakról! Jelentkezzen a 2023. december 4-5.-i Excel Power Pivot videókurzusra!  Részletek >>

 

Új hozzászólás