DAX-scenarier i Power Pivot

Viktigt!: Den här artikeln är maskinöversatt, se ansvarsfriskrivningen. Den engelska versionen av den här artikeln finns här för din referens.

Det här avsnittet innehåller länkar till exempel som visar hur du använder DAX-formler i följande scenarier:

  • Utföra komplicerade beräkningar

  • Arbeta med text och datum

  • Villkorsvärden och felsökning

  • Använda tidsinformation

  • Rangordna och jämföra värden

Artikelinnehåll

Komma igång

Exempeldata

Ytterligare resurser

Scenario: Utföra komplicerade beräkningar

Skapa anpassade beräkningar för en pivottabell

Använda ett filter på en formel

Ta bort filter selektivt för att skapa ett dynamiskt förhållande

Använda ett värde från en yttre loop

Scenario: Arbeta med text och datum

Skapa en nyckelkolumn genom sammanfogning

Sätta samman ett datum med datumdelar som extraherats från ett textdatum

Definiera ett anpassat datum- eller talformat

Använda datatyper med hjälp av en formel

Scenario: Villkorsvärden och felsökning

Skapa ett värde baserat på ett villkor

Söka efter fel i en formel

Scenario: Använda tidsinformation

Beräkna ackumulerad försäljning

Jämföra värden över tid

Beräkna ett värde för ett anpassat datumintervall

Scenario: Rangordna och jämföra värden

Visa endast de tio högsta posterna i en pivottabell

Ordna poster dynamiskt med hjälp av en formel

Komma igång

Exempeldata

Om du inte har arbetat med DAX-formler tidigare rekommenderar vi att du börjar med att granska exemplen i exempelinformationen för Power Pivot. Mer information finns i Hämta exempeldata för självstudiekurser om DAX och datamodeller.

Ytterligare resurser

Du kanske också vill besöka DAX Resource Center Wiki där du kan hitta alla typer av information om DAX inklusive bloggar, exempel, faktablad och videor som tillhandahålls av industry inledande experter och Microsoft.

Scenario: Utföra komplicerade beräkningar

Med DAX-formler kan komplicerade beräkningar som innefattar anpassade aggregeringar, filtrering och användning av villkorsvärden utföras. Det här avsnittet innehåller exempel på hur du kommer igång med anpassade beräkningar.

Skapa anpassade beräkningar för en pivottabell

CALCULATE och CALCULATETABLE är kraftfulla, flexibla funktioner som du kan använda för att definiera beräknade fält. Med de här funktionerna kan du ändra kontexten som beräkningen ska utföras i. Du kan även anpassa vilken typ av aggregering eller matematisk operation som ska utföras. I följande avsnitt finns exempel:

Använda ett filter på en formel

I de flesta fall där en DAX-funktion använder en tabell som ett argument kan du vanligtvis skicka en filtrerad tabell i stället, antingen med hjälp av funktionen FILTER i stället för tabellnamnet eller genom att ange ett filteruttryck som något av funktionsargumenten. I avsnitten nedan finns exempel på hur du skapar filter och hur filter påverkar resultatet av formler. Mer information finns i Filtrera data i DAX-formler.

Med funktionen FILTER kan du ange filtervillkor med hjälp av ett uttryck, medan de andra funktionerna är specifikt avsedda för att filtrera bort tomma värden.

Ta bort filter selektivt för att skapa ett dynamiskt förhållande

Genom att skapa dynamiska filter i formler kan du enkelt svara på frågor som följande:

  • Hur mycket bidrog försäljningen av den aktuella produkten till den totala försäljningen under året?

  • Hur mycket har den här avdelningen bidragit till den totala vinsten under alla verksamhetsår, jämfört med andra avdelningar?

Formler som du använder i en pivottabell kan påverkas av kontexten pivottabell, men du kan selektivt ändra kontexten genom att lägga till eller ta bort filter. Exemplet i avsnittet alla visar hur du gör detta. Om du vill hitta försäljning per för en viss återförsäljare försäljningen för alla återförsäljare, skapa ett mått som beräknar medelvärdet för den aktuella kontexten dividerat med värdet för alla kontexten.

Avsnittet ALLEXCEPT innehåller ett exempel på hur du tar bort filter för en formel selektivt. I båda exemplen får du förklarat för dig hur resultatet förändras beroende på hur pivottabellen är uppbyggd.

Andra exempel på hur du beräknar förhållanden och procentdelar finns i följande avsnitt:

Använda ett värde från en yttre loop

Utöver att använda värden från den aktuella kontexten i beräkningar kan ett värde från en tidigare loop användas i DAX när en uppsättning relaterade beräkningar skapas. Avsnittet nedan innehåller en genomgång av hur du skapar en formel som refererar till ett värde från en yttre loop. Funktionen EARLIER har stöd för upp till två nivåer med kapslade loopar.

Mer information om radkontext och relaterade tabeller, och hur du använder det här begreppet i formler, finns i Kontext i DAX-formler.

Scenario: Arbeta med text och datum

Det här avsnittet innehåller länkar till DAX-referensavsnitt med exempel på vanliga scenarier där du arbetar med text, extraherar och sätter samman datum- och tidsvärden eller skapar värden baserat på ett villkor.

Skapa en nyckelkolumn genom sammanfogning

I Power Pivot tillåts inte sammansatta nycklar. Om det finns sammansatta nycklar i datakällan kan du därför behöva kombinera dem till en enda nyckelkolumn. Avsnittet nedan innehåller ett exempel på hur du skapar en beräknad kolumn baserat på en sammansatt nyckel.

Sätta samman ett datum med datumdelar som extraherats från ett textdatum

I Power Pivot används en SQL Server-datatyp för datum/tid när du arbetar med datum. Om externa data innehåller datum som är formaterade på andra sätt – till exempel om datumen skrivs med ett nationellt datumformat som inte känns igen av Power Pivot-datamotorn, eller om heltalssurrogatnycklar används i data – kan du därför behöva använda en DAX-formel när du vill extrahera datumdelarna och sedan sätta samman delarna till ett giltigt datum-/tidsvärde.

Om du till exempel har en kolumn med datum som visats som heltal och sedan importerats som en textsträng kan du konvertera strängen till ett datum-/tidsvärde med hjälp av följande formel:

=Date(Right([value1],4),LEFT([value1],2),MID([value1],2))

Värde1

Resultat

01032009

1/3/2009

12132008

12/13/2008

06252007

6/25/2007

I följande avsnitt finns mer information om de funktioner som du kan använda när du vill extrahera och sätta samman datum.

Definiera ett anpassat datum- eller talformat

Om data innehåller datum eller tal som inte visas med något av standardtextformaten i Windows kan du definiera ett anpassat format, så att du kan vara säker på att värdena hanteras på rätt sätt. De här formaten används när värden konverteras till, eller från, strängar. Avsnittet nedan innehåller också en detaljerad lista över de fördefinierade format som du kan använda när du arbetar med datum och tal.

Använda datatyper med hjälp av en formel

I Power Pivot fastställs datatypen för resultatet av källkolumnerna, och du kan inte uttryckligen ange datatypen för resultatet eftersom den datatyp som är mest optimal fastställs av Power Pivot. Du kan dock använda den implicita datatypskonverteringen som utförs av Power Pivot när du vill ändra datatyp för utdata. Mer information om typkonverteringar finns i Hämta exempeldata för självstudiekurser om DAX och datamodeller.

  • När du vill konvertera en datum- eller talsträng till ett tal multiplicerar du med 1,0. I formeln nedan beräknas till exempel aktuellt datum minus 3 dagar och sedan visas det motsvarande heltalsvärdet som resultat.

    = (IDAG ()-3) * 1.0

  • Om du vill konvertera ett datum-, tal- eller valutavärde till en sträng sammanfogar du värdet med en tom sträng. Med formeln nedan returneras till exempel dagens datum som en sträng.

    = "" & Idag()

Följande funktioner kan också användas när du vill se till att en viss datatyp returneras:

Konvertera realtal till heltal

Scenario: Villkorsvärden och felsökning

Precis som Excel innehåller DAX funktioner som gör att du kan testa värden i data och returnera ett annat värde baserat på ett villkor. Du kan till exempel skapa en beräknad kolumn som etiketter återförsäljare antingen som prioriterade eller värde beroende på årliga försäljningsbeloppet. Funktioner som testar värden är även användbart för att kontrollera området eller typ av värden för att förhindra att oväntade datafel bryts beräkningar.

Skapa ett värde baserat på ett villkor

Du kan använda kapslade IF-villkor när du vill felsöka värden och generera nya värden utifrån villkor. Avsnitten nedan innehåller några enkla exempel på villkorsbaserad bearbetning och villkorsvärden:

Söka efter fel i en formel

Till skillnad från i Excel kan det inte finnas giltiga värden på en rad i en beräknad kolumn och ogiltiga värden på en annan rad. Om det finns ett fel i någon del av en Power Pivot-kolumn flaggas alltså hela kolumnen som felaktig, och därför måste du alltid korrigera formelfel som resulterar i ogiltiga värden.

Om du till exempel skapar en formel som dividerar med noll kan du få ett oändligt resultat eller ett fel. Vissa formler fungerar inte heller om funktionen hittar ett tomt värde när ett numeriskt värde förväntas. Medan du tar fram datamodellen är det bäst att låta felen visas så att du kan klicka på meddelandet och felsöka problemet. När du publicerar arbetsböcker bör du emellertid införliva felhantering, så att du kan förhindra att oväntade värden resulterar i att beräkningar inte fungerar.

Undvik att fel i en beräknad kolumn returneras genom att använda en kombination av logik- och informationsfunktioner för att söka efter fel och alltid returnera giltiga värden. Avsnitten nedan innehåller några enkla exempel på hur du gör detta i DAX:

Scenario: Använda tidsinformation

DAX-tidsinformationsfunktionerna innefattar funktioner som hjälper dig att hämta datum eller datumintervall i dina data. Du kan sedan använda dessa datum eller datumintervall när du vill beräkna värden under liknande perioder. Tidsinformationsfunktionerna omfattar även funktioner som kan användas med standarddatumintervall, så att du kan jämföra värden mellan månader, år eller kvartal. Du kan också skapa en formel som jämför värden för det första och sista datumet i en viss period.

En lista med alla tidsinformationsfunktioner finns i Tidsinformationsfunktioner (DAX). Tips om hur du använder datum och tider effektivt i en Power Pivot-analys finns i Datum i Power Pivot.

Beräkna ackumulerad försäljning

I avsnitten nedan finns exempel på hur du beräknar utgående och ingående balanser. Med exemplen kan du skapa löpande balanser under olika intervall, till exempel dagar, månader, kvartal eller år.

Jämföra värden över tid

I avsnitten nedan finns exempel på hur du jämför summor under olika tidsperioder. Standardtidsperioderna som stöds i DAX är månader, kvartal och år.

Beräkna ett värde för ett anpassat datumintervall

I avsnitten nedan finns exempel på hur du hämtar anpassade datumintervall, till exempel de första 15 dagarna efter att en försäljningskampanj inletts.

Om du använder tidsinformationsfunktioner när du hämtar en anpassad datumuppsättning kan du använda denna datumuppsättning som indata i en funktion för beräkningar, om du vill skapa anpassade aggregeringar över tidsperioder. I avsnittet nedan finns ett exempel på hur du gör detta:

  • PARALLELPERIOD, funktion

    Obs!: Om du inte behöver ange ett anpassat datumintervall, utan arbetar med standardbokföringsenheter som månader, kvartal eller år, rekommenderar vi att du utför beräkningar med hjälp av tidsinformationsfunktionerna som är avsedda för detta, till exempel TOTALQTD, TOTALMTD och TOTALYTD.

Scenario: Rangordna och jämföra värden

Du kan visa enbart de n högsta posterna i en kolumn eller pivottabell på flera olika sätt:

  • Du kan använda funktionerna i Excel 2010 och skapa ett filter för högsta värde. Du kan även markera ett antal högsta och lägsta värden i en pivottabell. I den första delen av det här avsnittet beskrivs hur du filtrerar en pivottabell så att de högsta 10 posterna visas. Mer information finns i dokumentationen för Excel.

  • Du kan skapa en formel där värden rangordnas dynamiskt och sedan filtrera efter de rangordnade värdena, eller använda rangordningsvärdet som ett utsnitt. I den andra delen av det här avsnittet beskrivs hur du skapar den här formeln och sedan använder rangordningen i ett utsnitt.

Alla metoder har för- och nackdelar.

  • Filtret Högsta i Excel är enkelt att använda, men filtret är bara tänkt för visning. Om bakomliggande data för pivottabellen ändras måste du uppdatera pivottabellen manuellt om du vill se ändringarna. Om du behöver arbeta med rangordning dynamiskt kan du använda DAX för att skapa en formel som jämför värden med andra värden inom en kolumn.

  • DAX-formeln är mer kraftfull: genom att lägga till rangordningsvärdet i ett utsnitt klickar du bara på utsnittet när du vill ändra antalet högsta värden som visas. Beräkningarna är dock krävande beräkningsmässigt och den här metoden är kanske inte lämplig för tabeller med många rader.

Visa endast de tio högsta posterna i en pivottabell

Så här visar du högsta eller lägsta värden i en pivottabell

  1. Klicka på nedpilen i rubriken Radetiketter i pivottabellen.

  2. Välj Värdefilter> Tio högsta.

  3. I dialogrutan Topp 10-Filter < kolumnnamn > väljer du kolumnen ska rangordnas och antalet värden, enligt följande:

    1. Markera Högst om du vill se cellerna med högst värden eller Lägst om du vill se cellerna med lägst värden.

    2. Skriv in antalet högsta eller lägsta värden som du vill se. Standardvärdet är 10.

    3. Markera hur du vill att värdena ska visas:

Namn

Beskrivning

Items

Markera det här alternativet om du vill filtrera pivottabellen så att endast listan med de högsta eller lägsta objekten visas efter deras värden.

Percent

Markera det här alternativet om du vill filtrera pivottabellen så att endast de objekt som uppgår till det angivna procenttalet visas.

Sum

Markera det här alternativet om du vill visa summan av värdena för de högsta och lägsta objekten.

  1. Markera kolumnen som innehåller de värden du vill rangordna.

  2. Klicka på OK.

Ordna poster dynamiskt med hjälp av en formel

I avsnittet nedan finns ett exempel på hur du använder DAX när du vill skapa en rangordning som sparas i en beräknad kolumn. Eftersom DAX-formler beräknas dynamiskt kan du alltid vara säker på att rangordningen är korrekt även om underliggande data har ändrats. Eftersom formeln används i en beräknad kolumn kan du dessutom använda rangordningen i ett utsnitt och sedan välja de fem högsta, tio högsta eller till och med 100 högsta värdena.

Obs!: Ansvarsfriskrivning för maskinöversättning: Den här artikeln har översatts av ett datorsystem utan mänsklig inblandning. Microsoft erbjuder dessa maskinöversättningar för att hjälpa icke engelskspråkiga användare att ta del av information om Microsofts produkter, tjänster och tekniker. Eftersom artikeln är maskinöversatt kan den innehålla fel i ordval, syntax och grammatik.

Utöka dina kunskaper
Utforska utbildning
Få nya funktioner först
Anslut till Office Insiders

Hade du nytta av den här informationen?

Tack för din feedback!

Tack för din feedback! Det låter som att det kan vara bra att koppla dig till en av våra Office-supportrepresentanter.

×