Az EARLIER függvényt használd, ha SZUMHA függvényt szeretnél írni Power BI-ban egy új oszlopban, a táblán belül
Arról már ITT beszéltünk, hogyan tudsz új mértékbe létrehozni SZUMHA, ÁTLAGHA, DARABHA függvényeket. Most azt szeretném megmutatni, hogyan tudod ezeket egy új oszlopban létrehozni ugyanazon a táblán belül, mintha Excelben lennél.
Nézzük lépésenként!
Az EARLIER függvényt akkor használjuk Power BI-ban, amikor egy sorból kiindulva más sorokat is figyelembe kell venni a számítások során. Ez leginkább számított oszlopoknál hasznos, amikor ugyanazon táblán belül kell összefüggéseket találni. Várj még! Mindjárt összeáll a kép.
Gondolj rá úgy, mint a SZUMHA/ÁTLAGHA/DARABHA függvényekre Excelben, amikor azt szeretnéd megtudni, hogy mondjuk Béla mennyi bevételt termelt. És ezt nem külön kalkulációban (új mérték / new measure) szeretnéd megcsinálni, hanem az adott táblázatban egy új oszlopban. Mutatom lépésről lépésre.
Hogyan működik az EARLIER függvény?
Képzeld el, hogy van egy táblád az alábbi adatokkal:
Név | Érték |
---|---|
Anna | 10 |
Béla | 20 |
Anna | 30 |
Béla | 40 |
Szeretnéd kiszámolni, hogy egy adott névhez tartozó összes érték mennyi (pl. “Anna” összes értéke = 10 + 30 = 40).
Excelben mit tennél? Használnál egy SZUMHA() függvényt, ami összeadja az összes olyan értéket, ami ugyanahhoz a névhez tartozik.
Power BI-ban mi történik? Power BI-ban a számított oszlopban dolgozva minden sor külön-külön van kezelve. Az EARLIER segít, hogy egy adott sor Név értékére visszahivatkozhass, miközben végigmész az összes soron.
Példa
A következő képlet segít kiszámolni, hogy egy adott név összes értéke mennyi:
Összérték =
CALCULATE(
SUM(Sales[Érték]),
FILTER(Sales, Sales[Név] = EARLIER(Sales[Név]))
)
Lépésről lépésre:
- Az EARLIER(Sales[Név]) megmondja, hogy az aktuális sorban éppen melyik név van (pl. “Anna”).
- A FILTER végigmegy a táblán, és kiszűri azokat a sorokat, amelyeknél a Név egyezik az aktuális sor nevével (pl. csak az “Anna” sorokat tartja meg).
- A SUM(Sales[Érték]) összeadja az összes ilyen kiszűrt értéket.
Eredmény:
Név | Érték | Összérték |
---|---|---|
Anna | 10 | 40 |
Béla | 20 | 60 |
Anna | 30 | 40 |
Béla | 40 | 60 |
Amúgy…Te mennyi időt szánsz ilyen cikkek olvasására? Miért nem jössz el inkább a Power BI tanfolyamra, ahol megértenéd, hogyan működnek a DAX függvények, és sokkal kevesebb időt kellene keresgélésekkel töltened.
Addig, ameddig gondolkozol, mutatom tovább az EARLIER függvényt.
Az EARLIER függvényt akkor érdemes használni, ha:
- Olyan számítást végzel, ahol egy adott sor értékére szükség van a táblában más sorok szűréséhez vagy összegzéséhez.
- Összefüggéseket kell vizsgálnod ugyanazon táblán belül.
Egy másik egyszerű példa
Ha egy személynek (pl. “Anna”) meg akarod számolni, hogy hányszor szerepel a táblában:
Sorok Száma =
CALCULATE(
COUNTROWS(Sales),
FILTER(Sales, Sales[Név] = EARLIER(Sales[Név]))
)
Eredmény:
Név | Érték | Sorok Száma |
---|---|---|
Anna | 10 | 2 |
Béla | 20 | 2 |
Anna | 30 | 2 |
Béla | 40 | 2 |
És még mire jó az EARLIER?
Az FKERES / VLOOKUP függvénynek van egy erőssége, amit a LOOKUPVALUE függvény nem tud: mindig az első találatot hozza a másik táblából, ha duplikációk vannak.
Power BI-ban a CALCULATE + EARLIER párost tudod használni az ilyen esetekben.
Ez viszont már nagyon haladó felhasználás. Miért nem jössz el a Power BI tanfolyamra, ahol megtanulod azokat a fogásokat, amiket profi Power BI fejlesztők is használnak?