W dzisiejszym poście zajmiemy się wyznaczaniem numeru tygodnia w roku i miesiącu oraz początku i końca tygodnia. W poradach od 341 do 344 omawialiśmy wyznaczanie tych danych w Excelu za pomocą funkcji .

Excel — Numer tygodnia w roku — porada 341

Excel — Początek i koniec tygodnia na podstawie daty — porada 342

Excel — Data początku i końca tygodnia na podstawie numeru tygodnia w roku — porada 343

Excel — Numer tygodnia w miesiącu różne systemy — porada 344

Poznamy możliwości Power Query w tym zakresie. Temat ten omówimy na podstawie przykładowych danych przedstawionych na rys. nr 1.

rys. nr 1 — Przykładowe dane

Mamy tutaj przedstawione dane zawierające zbiór dat i informację jaki to jest dzień tygodnia. Aby zaczytać dane do Power Query wybieramy polecenie Z tabeli z karty Dane (rys. nr 2).

rys. nr 2 — Z tabeli

Otworzy nam się Edytor zapytań Power Query z wczytaną tabelą. Klikamy ikonkę kalendarza przy nazwie kolumny Data aby zmienić formatowanie. Z podręcznego menu wybieramy typ danych – Data (rys. nr 3). Wyświetli nam się komunikat o Zmianie typu danych, w którym za pomocą przycisku Zamień bieżącą zatwierdzamy zmianę.

rys. nr 3 — Zmiana typu danych

Otrzymamy dane przedstawione na rysunku nr 4.

rys. nr 4 — Dane w edytorze zapytań

Chcemy dodać nową kolumnę z danymi zawierającymi numer tygodnia więc korzystamy z poleceń z karty Dodaj kolumnę. Gdybyśmy natomiast chcieli przekształcić nasze dane musimy skorzystać z analogicznych poleceń na karcie Przekształć (rys. nr 5).

rys. nr 5 — Przekształcenie danych

Naszym zadaniem jest dodanie nowych kolumn i interesującymi nas danymi. Zaznaczamy kolumnę Data a następnie rozwijamy polecenie Data (punkt 2 na rys. nr 6)  z karty Dodaj kolumnę, następnie rozwijamy polecenie Tydzień (punkt 3) i wybieramy interesującą nas informację, czyli w naszym przykładzie Tydzień roku (punkt 4).

rys. nr 6 — Dodawanie nowej kolumny Tydzień roku

Otrzymamy dane z nową kolumną zawierającą numer tygodnia w roku odpowiadającego naszej dacie (rys. nr 7).

rys. nr 7 — Tydzień roku

Istotną informacją tutaj jest, że Power Query działa na systemie pierwszym funkcji NUM.TYGODNIA Excela, czyli data 1 stycznia każdego roku to pierwszy dzień pierwszego tygodnia nowego roku. W Power Query możemy jedynie skorygować od jakiego dnia rozpoczyna się nowy tydzień. W Polsce standardowo nowy tydzień zaczyna się w poniedziałek i takie właśnie jest domyślne działanie funkcji Date.WeekOfYear w Power Query. Możemy to zmienić, wystarczy skopiować nazwę funkcji a następnie nacisnąć przycisk fx obok paska formuły, aby dodać nowy krok i wkleić w pasek formuły zapis =Date.WeekOfYear. Kiedy zatwierdzimy taką formułę klawiszem Enter otrzymamy informacje na temat tej funkcji, między innymi jej parametrów oraz jakie zwraca wartości. Możemy sobie tutaj w polu firstDayOfWeek wybrać dzień jaki chcemy przyjąć za początek tygodnia (rys. nr 8).

rys. nr 8 — funkcja Date.WeekOfYear

Usuwamy ten krok z Zastosowanych kroków, ponieważ wprowadziliśmy go tylko w celu pokazania możliwości zmiany dnia początku tygodnia. Jeśli chcemy wprowadzić zmianę dotyczącą dnia początku tygodnia możemy wpisać w formułę dodatkowy parametr zawierający nazwę dnia, jaki chcemy przyjąć za początek tygodnia. Załóżmy, że chcemy aby tydzień rozpoczynał się we wtorek, więc w formułę wpiszemy Day.Tuesday (rys. nr 9). Formuła powinna wyglądać następująco:

=Table.AddColumn(#"Zmieniono typ", "Tydzień roku" each Date.WeekOfYear([Data], Day.Tuesday), Int64.Type)

rys. nr 9 — Formuła funkcji Date.WeekOfYear

Otrzymamy zmienione dane, w których każdy nowy tydzień będzie rozpoczynał się we wtorek (rys. nr 10).

rys. nr 10 — Zmienione dane

Zamiast Day.Tuesday możemy wpisać wartość 2 w formule. Zadziała ona prawidłowo. Zapis formuły powinien wtedy wyglądać następująco:

=Table.AddColumn(#"Zmieniono typ", "Tydzień roku" each Date.WeekOfYear([Data], 2), Int64.Type)

W Power Query dni są numerowane od niedzieli do soboty. Niedzieli odpowiada wartość 0, poniedziałek to wartość 1 itd., natomiast sobocie przypisana jest wartość 6.

Wszystkie kolejne funkcje, z których tutaj będziemy korzystać mają ten dodatkowy argument, w którym możemy przyjąć jaki dzień chcemy traktować jako początek tygodnia.

W kolejnym przykładzie wyznaczymy sobie numer tygodnia w miesiącu. Zaznaczamy kolumnę Data a następnie rozwijamy polecenie Data (punkt 2 na rys. nr 11)  z karty Dodaj kolumnę, następnie rozwijamy polecenie Tydzień (punkt 3) i wybieramy interesującą nas informację, czyli w naszym przykładzie Tydzień miesiąca (punkt 4).

rys. nr 11 — Tydzień miesiąca

Otrzymamy nową kolumnę z numerem tygodnia w miesiącu (rys. nr 12).

rys. nr 12 — Numer tygodnia w miesiącu

Dzień uznawany za początek tygodnia wstawił się domyślnie (poniedziałek). Jeśli chcemy zmienić dzień początku tygodnia musimy to zrobić analogicznie jak w poprzednim przykładzie, czyli dopisać ten argument w formułę funkcji na pasku formuły (rys. nr 13). Zakładamy, że chcemy aby tydzień rozpoczynał się w piątek, czyli musimy wpisać argument Day.Friday lub wartość 5. Zapis powinien wyglądać następująco:

=Table.AddColumn(#"Wstawiono Tydzień roku", "Tydzień miesiąca", each Date.WeekOfMonth([Data],5) Int64.Type)

rys. nr 13 — Funkcja Date.WeekOfMonth

Gdybyśmy nie mieli widocznego paska formuły, musimy go uruchomić w karcie Widok (rys. nr 14).

rys. nr 14 — Uruchomienie paska formuły

Otrzymamy dane przedstawiające numerację rozpoczynającą nowy tydzień w piątek (rys. nr 15).

rys. nr 15 — Dane przedstawiające numerację rozpoczynającą nowy tydzień w piątek

W kolejnym przykładzie dodamy kolumnę zawierającą Początek tygodnia. Zaznaczamy kolumnę Data a następnie rozwijamy polecenie Data (punkt 2 na rys. nr 16)  z karty Dodaj kolumnę, następnie rozwijamy polecenie Tydzień (punkt 3) i wybieramy interesującą nas informację, czyli w naszym przykładzie Początek tygodnia (punkt 4).

rys. nr 16 — Początek tygodnia

Dodamy również kolumnę zawierającą Koniec tygodnia w analogiczny sposób jak na rysunku nr 16. Otrzymamy wtedy dwie nowe kolumny przedstawione na rysunku nr 17.

rys. nr 17 — Dane z początkiem i końcem tygodnia

Zostało tu zastosowana numeracja domyślna, czyli tydzień rozpoczyna się w poniedziałek, a kończy w niedzielę.

Użyliśmy w tych przykładach dwóch funkcji Date.StartOfWeek oraz Date.EndOfWeek.

Istotną informacją dla działań w Power Query jest to, że data 1 stycznia zawsze rozpoczyna pierwszy tydzień nowego roku. Możemy jedynie zmieniać dni początku i końca tygodnia. Nie ma możliwości zrobić kontynuacji numeru tygodnia z poprzedniego roku w nowym roku, tak żeby tydzień zawsze miał 7 dni, jak to było możliwe w Excelu.

Tak przygotowane dane możemy załadować do Excela za pomocą polecenia Zamknij i załaduj do z karty Narzędzia główne (rys. nr 18).

rys. nr 18 — Zamknij i załaduj do

Otworzy nam się okno Ładowania do, gdzie ustawiamy sposób wyświetlania danych jako Tabela oraz wybieramy miejsce wstawienia danych – Istniejący arkusz i wskazujemy konkretną komórkę (rys. nr 19). Powyższe parametry zatwierdzamy przyciskiem Załaduj.

rys. nr 19 — Okno ładowania do

Otrzymamy dane wczytane do Excela przedstawione na rysunku nr 20.

rys. nr 20 — Dane zaczytane do Excela

Możemy sobie jeszcze odpowiednio sformatować dane korzystając ze skrótu klawiszowego Ctrl+1, aby przy tych datach wyświetlała się nazwa dnia tygodnia. Otworzy nam się okno formatowania komórek, gdzie wybieramy formatowanie Niestandardowe w karcie Liczby, następnie w polu Typ musimy dopisać zapis ddd (rys. nr 21).

rys. 21 — Formatowanie komórek

Otrzymamy sformatowane dane przedstawione na rysunku nr 22.

21 — Sformatowane dane

Właśnie dodałem mój kurs o Power BI Desktop firmy Microsoft na Udemy.com.
W związku z tym, możesz dostać ten kurs w promocyjnej Cenie Na Start za zaledwie 34,99 PLN.
To najniższa cena jaką mogę ustawić na platformie edukacyjnej Udemy!

Kurs Power BI Desktop to:
- Ponad 6 godziny nagrań wideo, które krok po kroku wprowadzają Cię w tajniki pobierania, łączenia i analizy danych, a na koniec ich wizualizacji.
- Pliki do pracy razem z filmami.
- Dożywotni dostęp.
- Elektroniczny certyfikat ukończenia

Spis treści kursu o PowerBI Desktop:

Kurs jest podzielony na 6 rozdziałów, które pozwolą Ci wejść w tematykę analizy i wizualizacji danych za pomocą odpowiednio stworzonych zapytań i relacji w PowerBI Desktop.

  1. Wstęp do aplikacji PowerBI Desktop i jej możliwości
  2. Tworzenie i modyfikowanie zapytań (pobieranie danych)
  3. Modelowanie danych w PowerBI Desktop
  4. Wizualizacja danych i tworzenie raportów
  5. Usługa internetowa
  6. PowerBI Pro — kilka słów o płatnej części usługi PowerBI

Wejdź na stronę kursu PowerBI Desktop i zobacz szczegóły kursu
oraz udostępnione do podglądu filmy,
żeby przekonać się czy to kurs dla Ciebie.