Applies ToExcel för Microsoft 365 Excel 2024 Excel 2021 Excel 2019 Excel 2016

DAX (Data Analysis Expressions) har 35 funktioner specifikt för att aggregera och jämföra data över tid. Till skillnad från DAX:s datum- och tidsfunktioner har tidsinformationsfunktioner egentligen inget liknande i Excel. Det beror på att tidsinformationsfunktioner fungerar med data som ständigt förändras, beroende på vilket sammanhang du väljer i pivottabeller och Power View-visualiseringar.

För att kunna arbeta med tidsinformationsfunktioner måste du ha en datumtabell i datamodellen. Datumtabellen måste innehålla en kolumn med en rad för varje dag varje år som ingår i dina data. Den här kolumnen anses vara kolumnen Datum (även om den kan namnges vad du vill). Många tidsinformationsfunktioner kräver datumkolumnen för att beräkna enligt de datum du väljer som fält i en rapport. Om du till exempel har ett mått som beräknar ett sista kvartalssaldo med hjälp av funktionen CLOSINGBALANCEQTR måste Power Pivot veta när kvartalets slut verkligen är, så att datumkolumnen i datumtabellen refereras till för att veta när kvartalet börjar och slutar. Mer information om datumtabeller finns i Förstå och skapa datumtabeller i Power Pivot i Excel.

Funktioner

Funktioner som returnerar ett enda datum

Funktioner i den här kategorin returnerar ett enda datum. Resultatet kan sedan användas som argument för andra funktioner.

De två första funktionerna i den här kategorin returnerar det första eller sista datumet i Date_Column i aktuellt sammanhang. Det kan vara användbart när du vill hitta det första eller sista datumet då du hade en transaktion av en viss typ. De här funktionerna har bara ett argument, namnet på datumkolumnen i datumtabellen.

Följande två funktioner i den här kategorin hittar det första eller sista datumet (eller något annat kolumnvärde också) där ett uttryck har ett icke-tomt värde. Detta används oftast i situationer som lager, där du vill få det senaste lagerbeloppet och du vet inte när det senaste lagret togs.

Ytterligare sex funktioner som returnerar ett enda datum är de funktioner som returnerar det första eller sista datumet i en månad, ett kvartal eller ett år inom den aktuella kontexten för beräkningen.

Funktioner som returnerar en tabell med datum

Det finns sexton tidsinformationsfunktioner som returnerar en datumtabell. Oftast används dessa funktioner som ett SetFilter-argument för funktionen CALCULATE . Precis som alla tidsinformationsfunktioner i DAX tar varje funktion en datumkolumn som ett av argumenten.

De åtta första funktionerna i den här kategorin börjar med en datumkolumn i ett aktuellt sammanhang. Om du till exempel använder ett mått i en pivottabell kan det finnas en månad eller ett år på kolumnetiketterna eller radetiketterna. Nettoeffekten är att datumkolumnen filtreras så att endast datum för det aktuella sammanhanget tas med. Från och med det aktuella sammanhanget beräknar de här åtta funktionerna sedan föregående (eller nästa) dag, månad, kvartal eller år och returnerar dessa datum i form av en enda kolumntabell. Funktionerna "föregående" fungerar bakåt från det första datumet i det aktuella sammanhanget och funktionerna "nästa" går framåt från det sista datumet i det aktuella sammanhanget.

De följande fyra funktionerna i den här kategorin liknar dem, men i stället för att beräkna en tidigare (eller nästa) period beräknar de datumuppsättningen i perioden som är "från månad till datum" (eller kvartal till datum eller hittills i år eller under samma period föregående år). Alla dessa funktioner utför sina beräkningar med det senaste datumet i det aktuella sammanhanget. Observera att SAMEPERIODLASTYEAR kräver att det aktuella sammanhanget innehåller en sammanhängande uppsättning datum. Om det aktuella sammanhanget inte är en sammanhängande uppsättning datum returnerar SAMEPERIODLASTYEAR ett fel.

De fyra sista funktionerna i den här kategorin är lite mer komplexa och dessutom lite mer kraftfulla. De här funktionerna används för att växla från de datumuppsättningar som finns i den aktuella kontexten till en ny uppsättning datum.

  • DATUMADD (Date_Column, Number_of_Intervals, Intervall)

  • DATESBETWEEN (Date_Column, Start_Date, End_Date)

  • DATESINPERIOD (Date_Column, Start_Date, Number_of_Intervals, Interval)

DATESBETWEEN beräknar datumuppsättningen mellan det angivna startdatumet och slutdatumet. De återstående tre funktionerna flyttar ett visst antal tidsintervall från det aktuella sammanhanget. Intervallet kan vara dag, månad, kvartal eller år. De här funktionerna gör det enkelt att ändra tidsintervallet för en beräkning med något av följande:

  • Gå tillbaka två år

  • Gå tillbaka en månad

  • Gå framåt tre kvartal

  • Gå tillbaka 14 dagar

  • Gå framåt 28 dagar

I varje enskilt fall behöver du bara ange vilket intervall och hur många av dessa intervall som ska skiftas. Ett positivt intervall flyttas framåt i tiden, medan ett negativt intervall flyttas tillbaka i tiden. Intervallet anges med nyckelordet DAG, MÅNAD, KVARTAL eller ÅR. Dessa nyckelord är inte strängar, så de bör inte vara inom citattecken.

Funktioner som utvärderar uttryck över en tidsperiod

Den här kategorin av funktioner utvärderar ett uttryck under en angiven tidsperiod. Du kan utföra samma sak med CALCULATE och andra tidsinformationsfunktioner. Exempel:

= TOTALMTD (Uttryck, Date_Column [, SetFilter])

är exakt samma som:

= CALCULATE (Expression, DATESMTD (Date_Column)[, SetFilter])

Det är dock enklare att använda dessa tidsinformationsfunktioner när de passar bra för det problem som måste lösas:

  • TOTALMTD (Expression, Date_Column [, SetFilter])

  • TOTALQTD (Uttryck, Date_Column [, SetFilter])

  • TOTALYTD (Uttryck, Date_Column [, SetFilter] [,YE_Date]) *

I den här kategorin finns också en grupp funktioner som beräknar inledande och avslutande saldon. Det finns vissa begrepp som du bör förstå med just dessa funktioner. För det första, som du kanske tycker är uppenbart, är öppningssaldot för en period detsamma som stängningssaldot för den föregående perioden. Slutsaldot omfattar alla data fram till periodens slut, medan det inledande saldot inte innehåller några data inifrån den aktuella perioden.

De här funktionerna returnerar alltid värdet för ett uttryck som utvärderats för en viss tidpunkt. Den tidpunkt vi bryr oss om är alltid det sista möjliga datumvärdet i en kalenderperiod. Det inledande saldot baseras på det sista datumet i föregående period, medan det sista saldot baseras på det sista datumet i den aktuella perioden. Den aktuella perioden bestäms alltid av det sista datumet i det aktuella datumsammanhanget.

Ytterligare resurser

Artiklar: Förstå och skapa datumtabeller i Power Pivot i Excel

Referens: Funktionsreferens för DAXpå Office.com

Exempel: Modellering och analys av vinst- och förlustdata med Microsoft PowerPivot i Excel

Behöver du mer hjälp?

Vill du ha fler alternativ?

Utforska prenumerationsförmåner, bläddra bland utbildningskurser, lär dig hur du skyddar din enhet med mera.

Communities hjälper dig att ställa och svara på frågor, ge feedback och få råd från experter med rika kunskaper.