Przejdź do głównej zawartości
Pomoc techniczna
Zaloguj się przy użyciu konta Microsoft
Zaloguj się lub utwórz konto.
Witaj,
Wybierz inne konto.
Masz wiele kont
Wybierz konto, za pomocą którego chcesz się zalogować.

Język DAX (Data Analysis Expressions) oferuje 35 funkcji, które są przeznaczone specjalnie do agregowania i porównywania danych w czasie. W przeciwieństwie do funkcji daty i czasu języka DAX funkcje analizy czasowej nie mają nic podobnego w Excel. Jest to spowodowane tym, że funkcje analizy czasowej działają z danymi, które stale się zmieniają w zależności od kontekstu wybranego w tabelach przestawnych i Power View wizualizacjach.

Aby pracować z funkcjami analizy czasowej, w modelu danych musi być uwzględniona tabela dat. Tabela dat musi zawierać kolumnę z jednym wierszem na każdy dzień każdego roku, uwzględnioną w danych. Ta kolumna jest uznawana za kolumnę Data (chociaż może mieć na przykład taką nazwę, jaka Ci się podoba). Wiele funkcji analizy czasowej wymaga kolumny daty w celu obliczenia na podstawie dat wybranych jako pola w raporcie. Jeśli na przykład istnieje miara, która oblicza końcowe saldo kwartału końcowego przy użyciu funkcji CLOSINGBALANCEQTR, aby dodatku Power Pivot był w stanie określić, kiedy naprawdę jest koniec kwartału, musi on odwoływać się do kolumny daty w tabeli dat, aby było wiadomo, kiedy kwartał rozpoczyna się i kończy. Aby dowiedzieć się więcej o tabelach dat, zobacz Opis i tworzenie tabel dat w dodatku Power Pivot w programie Excel.

Funkcje

Funkcje zwracane z jedną datą

Funkcje w tej kategorii zwracają jedną datę. Wynik może być używany jako argumenty dla innych funkcji.

Pierwsze dwie funkcje w tej kategorii zwracają pierwszą lub ostatnią datę w Date_Column bieżącym kontekście. Może to być przydatne, gdy trzeba znaleźć pierwszą lub ostatnią datę transakcji określonego typu. Te funkcje mają tylko jeden argument ( nazwę kolumny daty w tabeli dat).

Dwie następne funkcje w tej kategorii znajdują pierwszą lub ostatnią datę (lub dowolną inną wartość w kolumnie), w której wyrażenie ma niepustą wartość. Jest to najczęściej używane w sytuacjach, takich jak zapasy, w których chcesz uzyskać ostatnią kwotę zapasów, i nie wiesz, kiedy ostatnio został zrobione zapasy.

Sześć innych funkcji, które zwracają jedną datę, to funkcje, które zwracają pierwszą lub ostatnią datę miesiąca, kwartału lub roku w bieżącym kontekście obliczeń.

Funkcje zwracane w tabeli dat

Istnieje szesnaście funkcji analizy czasowej, które zwracają tabelę dat. Najczęściej te funkcje będą używane jako argument FiltrU USTAW dla funkcji CALCULATE. Podobnie jak wszystkie funkcje analizy czasowej w języku DAX, każda funkcja przyjmuje jako jeden z argumentów kolumnę daty.

Pierwsze osiem funkcji w tej kategorii zaczyna się od kolumny daty w bieżącym kontekście. Jeśli na przykład używasz miary w tabeli przestawnej, etykiety kolumn lub wierszy mogą zawierać miesiąc lub rok. Efektem netto jest filtrowanie kolumny z datami, aby uwzględnić tylko daty z bieżącego kontekstu. Począwszy od bieżącego kontekstu te osiem funkcji oblicza poprzedni (lub następny) dzień, miesiąc, kwartał lub rok i zwraca te daty w postaci pojedynczej tabeli kolumnowej. Funkcje "poprzednie" działają wstecz od pierwszej daty w bieżącym kontekście, a funkcje "następne" są przesuwane od ostatniej daty w bieżącym kontekście.

Cztery następne funkcje w tej kategorii są podobne, ale zamiast obliczać poprzedni (lub następny) okres, obliczają zestaw dat w okresie, który jest "od miesiąca do daty" (albo od kwartału do daty, od daty do roku lub w tym samym okresie poprzedniego roku). Wszystkie te funkcje wykonują swoje obliczenia, używając ostatniej daty w bieżącym kontekście. Funkcja SAMEPERIODLASTYEAR wymaga, aby bieżący kontekst zawierał ciągły zestaw dat. Jeśli bieżący kontekst nie jest ciągłym zestawem dat, funkcja SAMEPERIODLASTYEAR zwróci błąd.

Cztery ostatnie funkcje w tej kategorii są nieco bardziej złożone, a także nieco bardziej zaawansowane. Te funkcje służą do zmiany zestawu dat z bieżącego kontekstu na nowy zestaw dat.

  • DATEADD (Date_Column, Number_of_Intervals, Interwał)

  • DATESBETWEEN (Date_Column, Start_Date, End_Date)

  • DATESINPERIOD (Date_Column, Start_Date, Number_of_Intervals, Interval)

DataZAKR.ZAKR oblicza zestaw dat między określoną datą rozpoczęcia a datą końcową. Pozostałe trzy funkcje odsuną część interwałów czasu od bieżącego kontekstu. Interwał może być dniem, miesiącem, kwartałem lub rokiem. Te funkcje ułatwiają zmianę interwału obliczeń o dowolną z następujących czynności:

  • Wstecz o dwa lata

  • Cofniesz się o miesiąc

  • Przejdź do przodu o trzy kwartały

  • Cofniesz się o 14 dni

  • Przejdź do przodu o 28 dni

W każdym przypadku wystarczy określić tylko, który interwał i ile tych interwałów należy zmienić. Interwał dodatni jest przesuwany do przodu w czasie, natomiast interwał ujemny jest przesuny z powrotem w czasie. Interwał jest określony przez słowo kluczowe DZIEŃ, MIESIĄC, KWARTAŁ lub ROK. Te słowa kluczowe nie są ciągami, więc nie powinny być znakami cudzysłowu.

Funkcje, które oceniają wyrażenia w okresie

Ta kategoria funkcji ocenia wyrażenie w określonym przedziale czasu. To samo można osiągnąć przy użyciu funkcji CALCULATE i innych funkcji analizy czasowej. Na przykład:

= TOTALMTD (Wyrażenie, Date_Column [, UstawFiltr])

dokładnie to samo co:

= CALCULATE (wyrażenie, DATESMTD (Date_Column)[, SetFilter])

Korzystanie z tych funkcji analizy czasowej jest jednak łatwiejsze, gdy dobrze wpasują się w problem, który wymaga rozwiązania:

  • TOTALMTD (Wyrażenie, Date_Column [, UstawFiltr])

  • TOTALQTD (Wyrażenie, Date_Column [, UstawFiltr])

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

W tej kategorii znajduje się również grupa funkcji, które obliczają saldo otwierania i zamykania. Z tymi konkretnymi funkcjami należy się rozumiać pewne pojęcia. Po pierwsze, jak się wydaje, saldo otwarcia w każdym okresie jest takie samo, jak saldo zamknięcia dla poprzedniego okresu. Saldo zamknięcia obejmuje wszystkie dane do końca okresu, natomiast saldo otwarcia nie zawiera żadnych danych z bieżącego okresu.

Te funkcje zawsze zwracają wartość wyrażenia obliczanego dla określonego punktu w czasie. Bardzo cenna wartość czasu jest zawsze ostatnią możliwą wartością daty w okresie kalendarza. Saldo otwarcia jest oparte na ostatniej dacie poprzedniego okresu, natomiast saldo zamknięcia jest oparte na dacie ostatniego okresu bieżącego. Bieżący okres jest zawsze ustalany na podstawie ostatniej daty w bieżącym kontekście daty.

Dodatkowe zasoby

Artykuły: Opis i tworzenie tabel dat w dodatku Power Pivot w programie Excel

Informacje: Informacje dotyczące funkcji języka DAXw Office.com

Przykłady: Modelowanie i analizowanie danych zysków i strat dzięki programowi Microsoft PowerPivot w Excel

Potrzebujesz dalszej pomocy?

Chcesz uzyskać więcej opcji?

Poznaj korzyści z subskrypcji, przeglądaj kursy szkoleniowe, dowiedz się, jak zabezpieczyć urządzenie i nie tylko.

Społeczności pomagają zadawać i odpowiadać na pytania, przekazywać opinie i słuchać ekspertów z bogatą wiedzą.

Czy te informacje były pomocne?

Jaka jest jakość języka?
Co wpłynęło na Twoje wrażenia?
Jeśli naciśniesz pozycję „Wyślij”, Twoja opinia zostanie użyta do ulepszania produktów i usług firmy Microsoft. Twój administrator IT będzie mógł gromadzić te dane. Oświadczenie o ochronie prywatności.

Dziękujemy za opinię!

×