Hirdetés

Új hozzászólás Aktív témák

  • Mutt

    senior tag

    válasz Peterhappy #53456 üzenetére

    Szia,

    Nem kell plusz dolog, csak Excel 2010 vagy frissebb, amiben van Power Pivot (PP).

    1. Amikor Kimutatást (Pivotot) készítesz, akkor pipáld be az "Adatmodellbe töltés" opciót.

    2. Kezdőknek az egyszerűbb - de nem hatékonyabb megoldás - pedig hogy az adatmodellben létrehozunk egy új mezőt, ahova berakjuk a megfelelő előjelet. Ehhez aktiválni kell a Power Pivot menüt, amit a Fejlesztő/Developer fülön a COM Addins alatt lehet megtenni.
    Ezek után a Power Pivot menüben a Kezelés/Manage gombra kattintva feljön az PP szerkesztő. Az utolsó, "Add Column" oszlopot kijelölve és felette a szerkesztőlécben megadhatjuk az alábbi képletet (a mintám szerint ha "kiadás" van a típus oszlopban akkor -1-el szorozzuk meg az Érték oszlopban található számot): =if(Range[Típus]="kiadás";-1;1)*Range[Érték]

    Az oszlop fejlécére kattintva adhatsz nevet az oszlopnak.
    Ha így viszed be a képletet: eredmény:=if(Range[Típus]="kiadás";-1;1)*Range[Érték], akkor a kettőspont előtti elnevezést kapja az oszlop. Bezárhatod a PP szerkesztő ablakot és visszajutsz az Excelbe.

    3. Ezek után a kimutatásban használd az új oszlopot az érték mezőben.

    A hatékonyabb, de nehezebben érthető megoldás egy új érték/measure hozzáadása az adatmodellhez. A PP a DAX nyelvet használja, ami angol függvényeket használ. Egy részük hasonlít az Excel függvényekhez, de többnyire máshogy működnek.

    Lépések a profi megoldáshoz:
    1. Ugyanaz mint a fenti 1-es.
    2. Ha akarod aktiváld a Power Pivot menűt, mint ahogy fent említettem. Nem kötelező.
    3. Kezd el összerakni a kimutatást, de kimutatás mezőknél jobb klikk a táblázaton (mintámban Range a neve) és válaszd az "Érték hozzáadása/Add measure" opciót. (Ha van már Power Pivot menüd, akkor azon belül a második gomb a "Measure", amivel ugyanezt lehet csinálni.

    Az ablakot vhogy így töltsd ki:

    Én az "eredmény" nevet adtam neki, a képlete ez (ha kell magyarázat szólj):
    =SUM(Range[Érték])-2*CALCULATE(SUM(Range[Érték]);Range[Típus]="kiadás")
    Alul beállítottam hogy Ft-ként tizedesek nélkül írja ki automatikusan.

    4. Ezt az új értéket, húzd be a kimutatás értékrészébe.

    Készen vagyunk.
    A Power Pivot mindkét esetben automatikusan használni fogja a képletet az új adatokon.

    Ps.
    A két megoldás között a különbség, hogy az első minden sor esetén lefuttatja a képletet (az adatok betöltésekor) és létrehoz egy új oszlopot. Ez lassítja a betöltést és több memóriát foglal. Észrevenni a mai gépeken milliós sorok esetén lehet csak. A második egy explicit függvény, ami csak a pivotban látható adatsorokon fut le (pl. ha együtt vannak a tavalyi és idei mozgások, de a pivotban szűrtél az ideiévre akkor csak 2024-es adatoknál számol a képlet).

    [ Szerkesztve ]

    A tanácsaimat ingyen adom. Ha nem tetszik, akkor kérlek ne kritizáld! / https://github.com/viszi/codes/tree/master/Excel

Új hozzászólás Aktív témák

Hirdetés