Blog JSystems - uwalniamy wiedzę!
Blog JSystems - uwalniamy wiedzę!
W skrócieEksport z systemu prawie nigdy nie nadaje się do raportu bez czyszczenia: ma wiersze tytułowe, sumy, niespójny tekst i duplikaty. W tej lekcji usuwamy wiersze techniczne, ustawiamy nagłówki i typy danych, poprawiamy wielkość liter i spacje oraz usuwamy powtórzone wiersze.
Ta lekcja jest częścią bezpłatnego kursu Power Query - czternastu lekcji od pierwszego zapytania w Excelu do przepływu danych w Microsoft Fabric i pracy z Copilotem. To lekcja 2 z 14.
Spis lekcji bezpłatnego kursu Power QueryKliknij w panelu zapytań Przekształć przykładowy plik. Wszystkie kroki z tej lekcji robimy na nim, dopóki nie napiszemy inaczej.
1. Na karcie Strona główna rozwiń Usuń wiersze i wybierz Usuwanie pierwszych wierszy. To samo menu ma też usuwanie końcowych i naprzemiennych wierszy, duplikatów, pustych wierszy oraz wierszy z błędami.

2. W oknie Usuwanie pierwszych wierszy wpisz 3 (dwa wiersze tytułu i jeden pusty) i kliknij OK.

3. Teraz w pierwszym wierszu stoją nazwy kolumn. Kliknij Użyj pierwszego wiersza jako nagłówków na karcie Strona główna (ten sam przycisk jest też na karcie Przekształć). Kolumny dostaną nazwy Data, Nr paragonu, Sklep, Kod produktu, Ilość, Cena netto, Rabat %, Wartość netto, Kanał i Płatność. Strzałka obok tego przycisku ma też operację odwrotną, która przenosi nagłówki z powrotem do pierwszego wiersza danych. Przydaje się, gdy źródło ma dwa wiersze nagłówków i chcesz je najpierw scalić w jeden.

Power Query po promowaniu nagłówków sam dodaje krok Zmieniono typ, zgadując typy kolumn. W zapytaniu pomocniczym ten krok szkodzi: typy ustawimy raz, na połączonej tabeli. Usuń go krzyżykiem na liście Zastosowane kroki.
4. Na końcu każdego pliku jest pusty wiersz i wiersz z sumą. Kliknij strzałkę przy nagłówku kolumny Data i wybierz Usuń puste. Potem jeszcze raz otwórz filtr, wejdź w Filtry tekstu i wybierz Nie równa się....

5. W oknie Filtrowanie wierszy wpisz Razem w polu wartości obok warunku nie równa się i kliknij OK.

Filtr zależy od typu kolumny. Kolumna tekstowa ma Filtry tekstu, liczbowa Filtry liczb (większe niż, między, pierwsze N), a kolumna z typem daty ma Filtry dat z warunkami względnymi, na przykład w poprzednim lub bieżącym miesiącu albo w ostatnich N dniach. Filtr względny przesuwa się sam przy każdym odświeżeniu.
Dlaczego filtrujemy wartość, a nie usuwamy ostatnich wierszy? Bo w kolejnym eksporcie podsumowanie może zajmować dwa wiersze albo pojawić się dodatkowa stopka. Filtr po treści jest odporny na takie zmiany, a usunięcie stałej liczby wierszy z końca nie jest.
6. Kliknij zapytanie Sprzedaz_miesieczna. Zamiast danych zobaczysz żółty pasek z błędem. To najczęstszy błąd przy łączeniu plików i dobrze zobaczyć go od razu:

Krok Zmieniono typ w zapytaniu głównym powstał w chwili łączenia plików, gdy kolumny nazywały się jeszcze Column1, Column2. Po naszych zmianach w zapytaniu przykładowym nazwy są inne i krok wskazuje kolumny, które nie istnieją. Rozwiązanie: usuń ten krok krzyżykiem. Typy ustawimy na nowo.
7. Zaznacz wszystkie kolumny (kliknij nagłówek pierwszej kolumny i naciśnij Ctrl+A), przejdź na kartę Przekształć i kliknij Wykryj typ danych. Power Query przejrzy wartości i nada typy: data dla kolumny Data, liczby całkowite dla Ilość i Rabat %, liczby dziesiętne dla cen i wartości, tekst dla reszty.


Typ danych to w Power Query coś więcej niż format. Od typu zależy, czy kolumnę da się zsumować, czy filtry pokażą zakres dat, czy scalanie po kluczu zadziała i czy model w Power BI policzy miary. Pełną listę typów zobaczysz po kliknięciu ikony typu przy nazwie kolumny:

Table.TransformColumnTypes, na przykład "en-US".Nazwy sklepów w eksporcie bywają zapisane z doklejonymi spacjami albo wielkimi literami („NORDVELLA WROCŁAW"), a kody produktów czasem małymi literami ze spacją na końcu („bex-1021 "). Dla człowieka to ten sam sklep i ten sam produkt, dla Power Query i dla tabeli przestawnej to różne wartości. Poprawiamy to w zapytaniu Sprzedaz_miesieczna.
1. Zaznacz kolumnę Sklep, na karcie Przekształć rozwiń Format i wybierz Przycięcie, a potem jeszcze raz Format > Zamień pierwszą literę każdego wyrazu na wielką.

2. Zaznacz kolumnę Kod produktu i zastosuj Format > Przycięcie oraz Format > Wielkie litery. Kody mają teraz jeden zapis, co jest warunkiem poprawnego scalenia z katalogiem produktów w następnym kroku.

3. Zostały duplikaty. W lutowym eksporcie system kasowy wysłał sześć linii paragonów dwa razy. Zaznacz wszystkie kolumny (Ctrl+A po kliknięciu nagłówka), na karcie Strona główna rozwiń Usuń wiersze i wybierz Usuń duplikaty.

Table.Distinct zastrzega, że nie ma gwarancji, który z duplikatów zostanie: Power Query może przenieść operację do źródła danych albo pominąć kroki, które uzna za zbędne, na przykład wcześniejsze sortowanie. Jeśli usuwasz duplikaty po jednej kolumnie (na przykład po numerze klienta), a chcesz zatrzymać najnowszy rekord, posortuj dane malejąco po dacie i zbuforuj wynik: w pasku formuły kroku sortowania obejmij całe wyrażenie funkcją Table.Buffer( ... ). Zbuforowana tabela zachowuje kolejność, więc Usuń duplikaty zostawi najnowszy wiersz. Pamiętaj też, że porównanie tekstu rozróżnia wielkość liter i spacje, dlatego formatowanie zrobiliśmy wcześniej.Ile duplikatów zniknęło? Wszystkie cztery pliki mają razem 9256 linii, a po usunięciu duplikatów zostaje 9250. Liczbę wierszy pokazuje profil kolumny, który włączymy w lekcji o profilowaniu danych.
Kilka operacji, których nie potrzebowaliśmy w danych Nordvelli, a które przy eksportach z systemów są codziennością:
Text.Replace([Sklep], "#(00A0)", " "), gdzie #(00A0) to zapis znaku spacji niełamliwej w języku M.Text.PadStart(Text.From([Kod]), 6, "0").Trzy kolejne narzędzia przydają się przy prawie każdym eksporcie, choć w danych Nordvelli akurat nie były potrzebne:
null na wartość pustą. W opcjach zaawansowanych zaznaczysz dopasowanie całej zawartości komórki, żeby „Kraków" nie zamieniło się wewnątrz „Kraków Galeria".null), więc jeśli komórki zawierają pusty tekst, najpierw zamień go na null.Poprzednia lekcja
Lekcja 1: Pierwsze kroki w Excelu i łączenie plików z folderuNastępna lekcja
Lekcja 3: Scalanie i dołączanie zapytań
Szkolenie Microsoft Excel - Power Query --> Dwa dni warsztatów z Excela: pobieranie danych z plików, folderów, SharePointa i baz SQL, ich czyszczenie i łączenie w Power Query, praca w języku M, a na koniec model danych i oparta na nim tabela przestawna. Prowadzi Sebastian Stasiak.
To szkolenie może być dofinansowane dla Ciebie z KFS lub BUR.
★★★★★Średnia ocena naszych szkoleń w Google: 5/5
Komentarze (0)
Brak komentarzy...