Blog JSystems - uwalniamy wiedzę!

Szukaj
Power BI i Business Intelligence  ·  JSystems  ·  Poradnik
Power Query: zdefiniuj kroki raz, odświeżaj w nieskończoność SUROWY PLIK sprzedaz.xlsx daty jako tekst duplikaty, puste wiersze EDYTOR POWER QUERY 1. Ustaw nagłówki 2. Usuń duplikaty 3. Popraw typy (locale) 4. Scal z klientami CZYSTA TABELA gotowa do raportu i do wizualizacji Nowe dane? Jedno kliknięcie: Odśwież
Cała idea Power Query w jednym obrazku: raz układasz listę kroków, a potem przy każdej nowej porcji danych odświeżasz raport jednym kliknięciem.

Dane w prawdziwej pracy nigdy nie są czyste. Eksport z systemu ma nagłówki dopiero w trzecim wierszu, puste kolumny, daty zapisane jako tekst, ceny ze słowem „zł” doklejonym do liczby i zdublowane rekordy. Zwykle poprawiamy to ręcznie w Excelu, a za miesiąc, przy nowym pliku, robimy dokładnie to samo od zera. Power Query kończy z tym marnotrawstwem: definiujesz kolejność operacji jeden raz, a przy każdej nowej porcji danych wystarczy kliknąć Odśwież.

Najważniejsza rzecz na start: Power Query w Excelu i Power Query w Power BI to ten sam silnik i ten sam edytor. Nauczysz się go raz i korzystasz w obu programach. W tym przewodniku przejdziemy pełny cykl krok po kroku na jednym, celowo zabałaganionym eksporcie sprzedaży fikcyjnej firmy. Zaimportujemy plik, uporządkujemy nagłówki, usuniemy duplikaty i puste wiersze, naprawimy typy danych i połączymy zamówienia z tabelą klientów. Każdy krok pokazujemy na prawdziwym zrzucie z edytora, nie na rysunku poglądowym. Cały proces poznasz krok po kroku: od importowania danych, przez czyszczenie danych i zmianę typów, aż po łączenie tabel i odświeżanie. Ten sam zestaw kroków w Power Query działa identycznie w Excelu i w Power BI.

Z tego artykułu dowiesz się:

  • Gdzie znaleźć Power Query w Excelu i w Power BI oraz jak zbudowany jest edytor
  • Jak zaimportować dane i od razu je podejrzeć, jeszcze przed wczytaniem
  • Jak wyczyścić bałagan: nagłówki, duplikaty, puste wiersze, typy danych i polskie daty
  • Jak łączyć tabele przez Scalanie (Merge) i Dołączanie (Append)
  • Jak podejrzeć kod w języku M i jak zautomatyzować całą pracę jednym Odśwież

Ćwicz na tych samych danych, co my

Pobierz nasz brudny plik sprzedaży wraz z tabelą klientów (Excel + CSV) i powtarzaj każdy krok tego poradnika u siebie.

⬇  Pobierz dane do ćwiczeń

Czym jest Power Query i gdzie go znajdziesz

Power Query wygląda tak samo niezależnie od programu. To wbudowany w Excel i Power BI edytor do pobierania i przekształcania danych. Jego zadanie jest proste: wziąć dane z dowolnego źródła, doprowadzić je do porządku i podać dalej, do arkusza albo do modelu raportu. Kluczowa cecha, która odróżnia go od ręcznego czyszczenia, to powtarzalność. Power Query nie zmienia wartości „na sztywno”, tylko zapisuje przepis: listę kroków, którą odtwarza na nowych danych.

W praktyce Power Query w Excelu i Power Query w Power BI to jedno narzędzie w dwóch programach. Jeśli nauczysz się go w Excelu, od razu umiesz go w Power BI, i odwrotnie. Różnica sprowadza się do tego, gdzie trafiają gotowe dane: w Excelu do arkusza albo do modelu danych, w Power BI do modelu raportu. Dlatego wszystkie operacje, które pokazujemy krok po kroku w Power BI, powtórzysz jeden do jednego w Excelu.

Otwierasz go w jednym z tych miejsc:

ProgramJak otworzyć Power Query
ExcelKarta DanePobierz dane (import z pliku lub bazy) albo Z tabeli/zakresu (dla danych już w arkuszu)
Power BI DesktopKarta Narzędzia głównePobierz dane, a następnie Przekształć dane, żeby wejść do edytora

Poniżej ekran startowy Power BI Desktop. Zaznaczyliśmy na czerwono dwa przyciski: Pobierz dane (1), którym importujemy dane, oraz Przekształć dane (2), który otwiera edytor Power Query. W Excelu te same opcje znajdziesz na karcie Dane. Cała reszta, którą przejdziemy krok po kroku, wygląda w obu programach tak samo.

Ekran startowy Power BI Desktop z przyciskami Pobierz dane i Przekształć dane oraz kafelkiem importu z pliku Excel
Punkt startowy w Power BI Desktop. Import zaczynamy od Pobierz dane (1), a Przekształć dane (2) otwiera edytor Power Query. W Excelu ten sam zestaw opcji jest na karcie Dane.

Interfejs edytora Power Query

Zanim zaczniemy klikać, warto poznać cztery obszary edytora. Będziemy do nich wracać przy każdym kroku.

Edytor Power Query: po lewej lista zapytań, w środku podgląd danych, po prawej panel Zastosowane kroki, u góry pasek formuły z kodem M
Edytor Power Query z wczytanym, surowym arkuszem. Kolumny nazywają się jeszcze Column1, Column2, a w danych siedzą śmieciowe wiersze tytułowe. To nasz punkt wyjścia.
ObszarDo czego służy
Zapytania (lewy panel)Lista wszystkich tabel, które przygotowujesz. Tu przełączasz się między nimi i tu dodajesz kolejne źródła.
Podgląd danych (środek)Podgląd tabeli po dotychczasowych krokach. Na nim klikasz nagłówki kolumn i wywołujesz transformacje.
Zastosowane kroki (prawy panel)Historia transformacji. Każda operacja to jeden krok. Możesz je cofać, edytować i zmieniać kolejność.
Pasek formułyPokazuje kod w języku M dla zaznaczonego kroku. To tu widać, co naprawdę robi każde kliknięcie.

Wolisz uczyć się Power Query z trenerem, na warsztacie i na własnych danych? → Kompleksowe szkolenie Power BI (Power Query, DAX, Online)

Krok 1: importowanie danych z różnych źródeł

Power Query zaczyna się od pytania: skąd bierzemy dane? Lista źródeł jest ogromna. To nie tylko Excel i CSV, ale też foldery, bazy danych, SharePoint, usługi online i dziesiątki gotowych łączników. Poniżej okno Pobierz dane z pełną listą konektorów. Importowanie danych z różnych źródeł wygląda tak samo w Excelu i w Power BI, bo w obu programach obsługuje je ten sam silnik Power Query.

Okno Pobierz dane w Power BI z listą źródeł: Skoroszyt programu Excel, Plik tekstowy lub CSV, XML, JSON, Folder, SQL Server, Oracle, MySQL i wiele innych
Okno Pobierz dane. Widać kategorie po lewej (Plik, Baza danych, Azure, Usługi online) i setki łączników. W Excelu ten sam kreator otwierasz z karty Dane.
Typ źródłaPrzykładyKiedy używać
PlikiExcel, CSV, XML, JSON, PDFEksporty z systemów, raporty od kontrahentów
Foldercały katalog plikówWiele plików o tej samej strukturze, np. raport z każdego miesiąca
Bazy danychSQL Server, Oracle, PostgreSQL, MySQLDane firmowe wprost ze źródła, bez pośredniego eksportu
OnlineSharePoint, strony WWW, usługi z interfejsem APIDane współdzielone i publiczne

My w ćwiczeniu wskazujemy nasz plik z eksportem sprzedaży (sprzedaz_surowa.xlsx z paczki do pobrania powyżej). Zrób to dokładnie tak:

1

Kliknij Pobierz dane, a potem Skoroszyt programu Excel (w Excelu: karta Dane → Pobierz dane → Z pliku → Ze skoroszytu).

2

W oknie wyboru pliku odszukaj sprzedaz_surowa.xlsx na dysku i kliknij Otwórz.

3

Otworzy się Nawigator. Po lewej zaznacz na liście arkusz Eksport (zaznaczenie to kwadracik przy nazwie), a na dole kliknij Przekształć dane. Miejsce kliknięcia zaznaczyliśmy na czerwono.

Zwróć uwagę, że Power Query nie wczytuje danych od razu. Nawigator to podgląd zawartości pliku, jeszcze przed wejściem do raportu. Widzimy w nim cały bałagan naraz.

Okno Nawigator z zaznaczonym arkuszem Eksport i czerwoną ramką na przycisku Przekształć dane. W podglądzie widać dwa śmieciowe wiersze tytułu, puste wiersze i zdublowane zamówienie ZAM-1006
Nawigator ujawnia wszystko za jednym razem: dwa wiersze tytułu raportu, prawdziwe nagłówki dopiero w trzecim wierszu, puste wiersze i zdublowane zamówienie ZAM-1006. Kliknij przycisk zaznaczony na czerwono, czyli Przekształć dane (nie Załaduj), żeby wejść do edytora i to naprawić.

Załaduj czy Przekształć dane?

Załaduj wrzuca dane od razu, z całym bałaganem. Przekształć dane otwiera edytor Power Query, w którym najpierw wszystko czyścimy. Przy brudnych danych zawsze wybieramy Przekształć dane.

Krok 2: uporządkuj strukturę (nagłówki i śmieciowe wiersze)

Nasz plik ma na górze dwa wiersze tytułu raportu, a właściwe nagłówki dopiero w trzecim wierszu. Zajmiemy się tym w dwóch ruchach: najpierw usuniemy śmieciowe wiersze, potem zamienimy pierwszy wiersz w nagłówki. Rób to dokładnie tak, jak pokazujemy.

2A. Usuń dwa śmieciowe wiersze z góry

1

W lewym górnym rogu tabeli kliknij małą ikonę tabeli (kwadracik nad numerami wierszy), a z menu, które się rozwinie, wybierz Usuń pierwsze wiersze. Oba miejsca kliknięcia zaznaczyliśmy na czerwono.

Menu ikony tabeli w edytorze Power Query z czerwoną ramką na ikonie tabeli i na pozycji Usuń pierwsze wiersze
Krok 1: kliknij ikonę tabeli (górna czerwona ramka), a potem pozycję Usuń pierwsze wiersze (dolna ramka). To samo menu kryje większość operacji na całej tabeli.
2

W okienku, które się pojawi, w polu Liczba wierszy wpisz 2 i kliknij OK.

Okno Usuwanie pierwszych wierszy z polem Liczba wierszy, w które wpisujemy 2
Krok 2: wpisujemy 2, bo śmieciowe są dwa górne wiersze. Po kliknięciu OK znikają, a w panelu Zastosowane kroki (z prawej) pojawia się krok Usunięto pierwsze wiersze.

Efekt: pierwszy wiersz tabeli to teraz prawdziwe nazwy kolumn (Nr zamówienia, Data, Klient ID...), ale wciąż siedzą w danych.

Tabela po usunięciu dwóch pierwszych wierszy. W pierwszym wierszu widać już nazwy kolumn Nr zamówienia, Data, Klient ID, ale kolumny wciąż nazywają się Column1, Column2
Śmieciowy tytuł raportu zniknął. Nazwy kolumn są już w pierwszym wierszu, ale same kolumny wciąż nazywają się Column1, Column2. To poprawimy w następnym ruchu.

2B. Zamień pierwszy wiersz w nagłówki

1

Kliknij ponownie tę samą ikonę tabeli w lewym górnym rogu i tym razem wybierz Użyj pierwszego wiersza jako nagłówków.

Menu ikony tabeli z czerwoną ramką na pozycji Użyj pierwszego wiersza jako nagłówków
To samo menu tabeli, tym razem wybieramy Użyj pierwszego wiersza jako nagłówków (zaznaczone na czerwono). Power Query przesunie pierwszy wiersz do nagłówków kolumn.

Efekt: kolumny mają wreszcie sensowne nazwy i od tej chwili możemy się do nich odwoływać.

Tabela po ustawieniu nagłówków. Kolumny mają teraz nazwy Nr zamówienia, Data, Klient ID, Kategoria
Po ustawieniu nagłówków kolumny mają sensowne nazwy: Nr zamówienia, Data, Klient ID, Kategoria, Produkt, Ilość, Cena jednostkowa, Miasto. Od tej chwili możemy się do nich odwoływać po nazwie.

Krok 3: czyszczenie danych, czyli usuwanie duplikatów, filtrowanie i zmiana typów

Czyszczenie danych w Power Query, czyli usuwanie duplikatów, filtrowanie i poprawianie wartości, wywołasz w większości prawym przyciskiem myszy na nagłówku kolumny. To najwygodniejsze menu w całym Power Query: zmiana typu, usuwanie duplikatów, zamiana wartości, dzielenie kolumn, grupowanie, wszystko w jednym miejscu.

Menu kontekstowe kolumny w Power Query z opcjami Usuń, Usuń duplikaty, Zmień typ, Zamień wartości, Podziel kolumny, Grupuj według
Menu prawego przycisku na nagłówku kolumny. Stąd wywołasz większość operacji czyszczenia: zmianę typu, usuwanie duplikatów, zamianę wartości, podział kolumn i grupowanie.

3A. Usuń zdublowane zamówienie

Nasz eksport zawiera dwukrotnie zamówienie ZAM-1006. Usuwamy duplikaty na podstawie kolumny Nr zamówienia.

1

Kliknij prawym przyciskiem myszy nagłówek kolumny Nr zamówienia, a z menu wybierz Usuń duplikaty.

Menu kontekstowe kolumny Nr zamówienia w Power Query z czerwoną ramką na pozycji Usuń duplikaty
Prawy przycisk na nagłówku kolumny Nr zamówienia otwiera to menu. Wybieramy Usuń duplikaty (zaznaczone na czerwono). Power Query zostawia pierwsze wystąpienie każdej wartości.

Efekt: zdublowane zamówienie ZAM-1006 znika, a w Zastosowanych krokach dochodzi krok Usunięto duplikaty.

Tabela po usunięciu duplikatów. Zdublowane zamówienie ZAM-1006 występuje już tylko raz, w Zastosowanych krokach jest krok Usunięto duplikaty
Po Usuń duplikaty zdublowane zamówienie występuje już tylko raz, a w panelu Zastosowane kroki dochodzi krok Usunięto duplikaty.

3B. Usuń puste wiersze

Po eksporcie zostały puste wiersze (bez numeru zamówienia i klienta). Pozbędziemy się ich przez filtr kolumny.

1

W nagłówku kolumny Klient ID kliknij strzałkę filtra (mały trójkącik po prawej stronie nazwy), a z rozwiniętej listy wybierz Usuń puste.

Rozwijane menu filtra kolumny Klient ID w Power Query z czerwoną ramką na opcji Usuń puste
Menu filtra kolumny. Oprócz zaznaczania konkretnych wartości i sortowania mamy tu szybkie Usuń puste (zaznaczone na czerwono), które w jednym kliknięciu wyrzuca puste wiersze.

Efekt: zostaje 20 kompletnych rekordów, bez ani jednej dziury.

Tabela po odfiltrowaniu pustych wierszy. Zostaje 20 czystych rekordów ZAM-1001 do ZAM-1020, w Zastosowanych krokach jest krok Przefiltrowano wiersze
Po odfiltrowaniu pustych wierszy zostaje 20 kompletnych rekordów, od ZAM-1001 do ZAM-1020.

Inne przydatne operacje z tego samego menu

Przytnij (Trim) i Wyczyść (Clean) usuwają spacje na początku i końcu tekstu oraz niewidoczne znaki, np. z kolumny Miasto, gdzie mieliśmy „ Warszawa ”.

Zamień wartości podmienia fragment tekstu, np. usuwa „ zł” z kolumny Cena jednostkowa, żeby dało się ją zamienić na liczbę.

Format → Każdy wyraz wielką literą ujednolica wielkość liter w kolumnie Kategoria, gdzie mieliśmy wymieszane „laptopy”, „Laptopy” i „LAPTOPY”.

Krok 4: typy danych, czyli gdzie rodzą się błędy

To najczęstsze źródło problemów, zwłaszcza w Polsce. Nasza kolumna Data to tekst w formacie 05.01.2026 (dzień.miesiąc.rok), a ceny mają przecinek dziesiętny. Gdy po prostu zmienisz typ na Datę, Power Query z innym ustawieniem regionalnym może zinterpretować tę datę niepoprawnie (zamienić dzień z miesiącem) albo w ogóle jej nie rozpoznać i zwrócić błąd. Rozwiązanie to Zmień typ z ustawieniami regionalnymi, gdzie wprost wskazujemy, z jakiego kraju pochodzą dane. Zróbmy to na kolumnie Data.

1

Kliknij ikonę typu danych po lewej stronie nazwy kolumny Data (to mała ikonka ABC 123), a z menu wybierz Używając ustawień regionalnych....

Menu typu danych kolumny w Power Query z czerwoną ramką na ikonie ABC 123 i na pozycji Używając ustawień regionalnych
Krok 1: kliknij ikonę typu ABC 123 przy kolumnie (górna ramka) i wybierz Używając ustawień regionalnych (dolna ramka). Nie mylić ze zwykłym Zmień typ, który ignoruje polski format.
2

W okienku ustaw Typ danych na Data, a Ustawienia regionalne na Polski (Polska) i kliknij OK.

Okno Zmienianie typu za pomocą ustawień regionalnych. Typ danych ustawiony na Data, ustawienia regionalne Polski (Polska), poniżej przykładowe wartości daty
Krok 2: wybieramy typ Data i lokalizację Polski (Polska). Power Query od razu pokazuje na dole, jak zinterpretuje wartości, na przykładzie z podglądu.

Efekt: kolumna Data ma prawdziwy typ daty (ikona kalendarza, wartości wyrównane do prawej). Dopiero teraz można na niej liczyć i grupować po miesiącach.

Kolumna Data z ikoną kalendarza, wartości wyrównane do prawej, co oznacza prawdziwy typ daty
Efekt: kolumna Data ma teraz prawdziwy typ daty (ikona kalendarza, wyrównanie do prawej). Dopiero teraz można na niej liczyć, sortować i grupować po miesiącach.

Zapamiętaj kolejność. Cenę „5 199,00 zł” najpierw czyścimy (Zamień wartości: usuń „ zł” i spację), a dopiero potem zmieniamy typ na Liczbę dziesiętną z ustawieniami regionalnymi. Odwrotna kolejność da same błędy, bo Power Query nie zamieni tekstu ze słowem „zł” na liczbę.

Krok 5: nowe kolumny i obliczenia

Gdy dane są już czyste, często dokładamy kolumny obliczane. Klasyczny przykład to wartość zamówienia: liczba sztuk razy cena jednostkowa. Zbudujemy taką kolumnę krok po kroku.

1

Kliknij ikonę tabeli w lewym górnym rogu i wybierz Dodaj kolumnę niestandardową... (tę samą opcję znajdziesz też na karcie Dodaj kolumnę na wstążce u góry).

Menu ikony tabeli w Power Query z czerwoną ramką na pozycji Dodaj kolumnę niestandardową
Wybieramy Dodaj kolumnę niestandardową (zaznaczone na czerwono). Otworzy się okno, w którym zbudujemy własną formułę.
2

Wpisz nazwę nowej kolumny (np. Wartość), a w polu formuły złóż [Ilość] * [Cena jednostkowa]. Nazwy kolumn nie przepisuj ręcznie: klikaj je dwukrotnie na liście Dostępne kolumny po prawej, a Power Query wstawi je poprawnie. Na koniec kliknij OK.

Okno Kolumna niestandardowa z formułą Wartość równa się Ilość razy Cena jednostkowa oraz listą dostępnych kolumn
Kolumna niestandardowa. Budujemy formułę Wartość = [Ilość] * [Cena jednostkowa], wstawiając kolumny z listy Dostępne kolumny. Warunek: obie kolumny muszą być już liczbami (typ zmieniamy wcześniej, jak w kroku 4).

Obok jest jeszcze wygodniejsza opcja: Kolumna z przykładów. Zamiast pisać formułę, wpisujesz kilka przykładowych wyników, a Power Query sam odgaduje regułę (np. wyciągnięcie roku z daty albo domeny z adresu e-mail). To świetne rozwiązanie na start, zanim poznasz język M.

Krok 6: łączenie i przekształcanie danych z wielu źródeł (Scalanie i Dołączanie)

Łączenie i przekształcanie danych z wielu źródeł to codzienność każdego analityka. Prawdziwe raporty prawie nigdy nie mieszczą się w jednej tabeli. Zamówienia są w jednym pliku, dane klientów w drugim, słowniki produktów w trzecim. Power Query łączy je na dwa sposoby, które łatwo pomylić. Poniższy schemat pokazuje różnicę.

Scalanie (Merge) = dokłada kolumny Zamówienia + Klienci Zamówienia + Klienci Łączy po wspólnym kluczu (np. Klient ID). Odpowiednik SQL JOIN. Dołączanie (Append) = dokłada wiersze Styczeń Luty Styczeń + Luty Ustawia tabele jedna pod drugą. Odpowiednik SQL UNION.
Scalanie poszerza tabelę o nowe kolumny z drugiego źródła. Dołączanie wydłuża ją o nowe wiersze. To najczęściej mylona para operacji w Power Query.

Zróbmy prawdziwe scalenie. Do naszych zamówień doklejamy dane klientów z drugiego pliku (klienci.csv z paczki do pobrania).

1

Najpierw wczytaj drugą tabelę jako osobne zapytanie: karta Narzędzia główneNowe źródłoPlik tekstowy/CSV → wskaż klienci.csv. Power Query pokaże krótki podgląd pliku (kodowanie i ogranicznik); zostaw domyślne ustawienia i kliknij OK. Nowe zapytanie klienci pojawi się w panelu Zapytania po lewej, obok tabeli zamówień.

2

Wróć do tabeli zamówień, kliknij ikonę tabeli w lewym górnym rogu i wybierz Scal zapytania.

Menu ikony tabeli w Power Query z czerwoną ramką na pozycji Scal zapytania
Wybieramy Scal zapytania (zaznaczone na czerwono). To operacja, która dokłada kolumny z drugiej tabeli. Tuż obok jest Dołącz zapytania, które dokłada wiersze.
3

W oknie Scalanie z listy wybierz tabelę klienci, a następnie kliknij nagłówek kolumny Klient ID w obu tabelach (górnej i dolnej), żeby wskazać, po czym mają się połączyć. Kliknij OK.

Okno Scalanie w Power Query. Tabela Eksport połączona z tabelą klienci po kolumnie Klient ID, komunikat potwierdza dopasowanie 20 z 20 wierszy
Okno Scalanie. Łączymy tabelę zamówień z tabelą klientów po kolumnie Klient ID. Na dole Power Query potwierdza: zaznaczenie pasuje do 20 z 20 wierszy, czyli każde zamówienie znalazło swojego klienta.

Ważne jest tu pole Rodzaj sprzężenia. Decyduje ono, co zrobić z wierszami bez dopasowania.

Rodzaj sprzężeniaCo zwraca
Lewe zewnętrzneWszystkie wiersze z pierwszej tabeli, pasujące z drugiej. Najczęstszy wybór.
WewnętrzneTylko wiersze, które mają dopasowanie po obu stronach.
Prawe zewnętrzneWszystkie z drugiej tabeli, pasujące z pierwszej.
Pełne zewnętrzneWszystkie wiersze z obu tabel.
Lewe anti, Prawe antiTylko wiersze bez dopasowania. Świetne do wyłapywania braków, np. zamówień bez klienta.
4

Po scaleniu na końcu tabeli pojawia się nowa kolumna z zagnieżdżonymi tabelami. Kliknij w jej nagłówku ikonę rozwijania (dwie strzałki w bok), odznacz Użyj oryginalnej nazwy kolumny jako prefiksu i zaznacz pola, które chcesz dokleić: Nazwa firmy, Segment, Województwo. Kliknij OK.

Panel rozwijania scalonej kolumny w Power Query z listą kolumn do wybrania: Nazwa firmy, Segment, Województwo
Rozwijanie scalonej kolumny. Zaznaczamy, które pola z tabeli klientów doklejamy do zamówień: Nazwa firmy, Segment, Województwo.

Efekt: do każdego zamówienia doklejone są dane klienta, a cały przepis widać po prawej w panelu Zastosowane kroki.

Tabela po scaleniu i rozwinięciu. Do zamówień doklejone są dane klientów, po prawej cała historia dziewięciu kroków w panelu Zastosowane kroki
Efekt końcowy. Do każdego zamówienia doklejone są dane klienta, a po prawej widać całą historię kroków, którą Power Query odtworzy przy każdym odświeżeniu.

Zastosowane kroki i język M, czyli co siedzi pod klikaniem

Każde kliknięcie w menu zapisuje jedną linijkę kodu w języku M. Cały przepis podejrzysz w oknie Edytor zaawansowany. To potwierdzenie, że Power Query niczego nie robi „magicznie”, tylko generuje czytelny, powtarzalny kod.

Okno Edytor zaawansowany z kodem zapytania w języku M: kolejne kroki Table.Skip, Table.PromoteHeaders, Table.Distinct, Table.SelectRows, Table.TransformColumnTypes
Edytor zaawansowany pokazuje całe zapytanie jako kod M. Każda linijka odpowiada jednemu krokowi z prawego panelu. Power Query potwierdza na dole: nie wykryto błędów składniowych.

Ten sam pipeline zapisany w M wygląda tak (nazwy kroków to dokładnie to, co widać w panelu Zastosowane kroki):

let
    Źródło = Excel.Workbook(File.Contents("C:\Demo\sprzedaz_surowa.xlsx"), null, true),
    Eksport_Sheet = Źródło{[Item="Eksport", Kind="Sheet"]}[Data],
    #"Usunięto pierwsze wiersze" = Table.Skip(Eksport_Sheet, 2),
    #"Nagłówki o podwyższonym poziomie" = Table.PromoteHeaders(#"Usunięto pierwsze wiersze", [PromoteAllScalars=true]),
    #"Usunięto duplikaty" = Table.Distinct(#"Nagłówki o podwyższonym poziomie", {"Nr zamówienia"}),
    #"Przefiltrowano wiersze" = Table.SelectRows(#"Usunięto duplikaty", each [Klient ID] <> null and [Klient ID] <> ""),
    #"Zmieniono typ z ustawieniami regionalnymi" = Table.TransformColumnTypes(#"Przefiltrowano wiersze", {{"Data", type date}}, "pl-PL")
in
    #"Zmieniono typ z ustawieniami regionalnymi"

Na początku nie musisz pisać ani jednej linijki M. Warto go poznać dopiero wtedy, gdy potrzebujesz transformacji spoza menu albo chcesz zbudować własną funkcję. To temat na osobny, bardziej zaawansowany materiał.

Krok 7: automatyzacja i automatyczne przepływy danych

Gdy pipeline jest gotowy, klikamy Zamknij i zastosuj (w Power BI) albo Zamknij i załaduj (w Excelu). Czyste dane trafiają do modelu lub arkusza. I teraz najważniejsze: za miesiąc dostajesz nowy eksport o tej samej strukturze. Podmieniasz plik, klikasz Odśwież i Power Query wykonuje wszystkie kroki od nowa, w ułamku sekundy.

Nowy plik (kolejny miesiąc) Odśwież Te same kroki M wykonują się same Gotowy raport zero ręcznej pracy
Automatyzacja w praktyce. Raz zbudowany pipeline działa co miesiąc bez ruszania palcem, bo Power Query pamięta wszystkie kroki.

Tak w praktyce budujemy automatyczne przepływy danych: raz opisany ciąg operacji sam wykonuje się na nowych plikach, bez powtarzania pracy. Ten sam mechanizm skaluje się na cały folder. Jeśli jako źródło wskażesz katalog, Power Query wczyta wszystkie pliki naraz i połączy je w jedną tabelę. Dorzucasz kolejny plik do folderu, klikasz Odśwież, a nowe dane doklejają się automatycznie. To właśnie zamienia kilkugodzinną, comiesięczną harówkę w jedno kliknięcie.

Power Query w Excelu i w Power BI: praktyczne różnice

Skoro edytor Power Query jest ten sam w Excelu i w Power BI, kiedy sięgać po który program? Excel sprawdza się do szybkiego czyszczenia danych i mniejszych zestawów, które i tak trzymasz w arkuszu. Power BI wygrywa przy dużych modelach danych, raportach i publikacji online. Wielu analityków korzysta z obu: prototypuje Power Query w Excelu, a docelowy raport buduje w Power BI. Umiejętność Power Query przenosi się między programami bez uczenia się od nowa.

AspektExcelPower BI
Gdzie ląduje wynikTabela w arkuszu lub model danychZawsze model raportu
Limit wierszyArkusz ma około miliona wierszy, model znacznie więcejMiliony wierszy bez problemu
Edytor Power QueryIdentyczny w obu programach. Umiejętności przenoszą się jeden do jednego.
Do czegoSzybkie czyszczenie, arkusze robocze, mniejsze zestawyRaporty i pulpity, duże modele, publikacja online

Najczęstsze błędy i pułapki

  • Przecinek kontra kropka. Polskie liczby i daty psują się przy złym locale. Zawsze używaj Zmień typ z ustawieniami regionalnymi.
  • Automatyczny krok Zmieniono typ. Power BI sam dokleja zmianę typu zaraz po imporcie, często błędnie interpretując polskie daty. Jeśli widzisz błędy, usuń ten krok i zrób typowanie ręcznie, z locale.
  • Kolumna nie istnieje. Gdy zmienisz nazwy nagłówków, a późniejszy krok odwołuje się do starej nazwy, dostaniesz błąd. Trzymaj się kolejności: najpierw ustaw nagłówki, potem reszta.
  • Zapora prywatności (Formula Firewall). Przy łączeniu danych z różnych źródeł Power Query bywa ostrożny i blokuje operację. Zwykle pomaga ustawienie tego samego poziomu prywatności dla obu źródeł.
  • Kolejność kroków ma znaczenie. Filtrowanie na początku (żeby zredukować liczbę wierszy) potrafi znacząco przyspieszyć odświeżanie dużych zapytań.

Gdzie to się przydaje w codziennej pracy

  • Miesięczny raport z folderu. Każdy miesiąc to nowy plik. Wskazujesz folder raz i odtąd tylko odświeżasz.
  • Konsolidacja oddziałów. Kilka plików w tym samym układzie łączysz Dołączaniem (Append) w jedną tabelę.
  • Czyszczenie eksportu z CRM. Trim, ujednolicenie wielkości liter, usuwanie duplikatów kontaktów, wszystko powtarzalnie.
  • Wzbogacanie danych. Do transakcji doklejasz Scalaniem (Merge) słowniki produktów, klientów czy regionów.

We wszystkich tych scenariuszach zasada jest ta sama: Power Query wykonuje import, czyszczenie i łączenie danych raz opisane krok po kroku, a Ty tylko odświeżasz raport. To dlatego Power Query stał się podstawowym narzędziem analityka danych, zarówno w Excelu, jak i w Power BI.

Najczęściej zadawane pytania o Power Query

Czym różni się Power Query w Excelu od Power Query w Power BI?

To ten sam silnik i ten sam edytor. Różni się tylko miejsce, z którego go otwierasz, i to, gdzie lądują wyniki. W Excelu wynik trafia do tabeli w arkuszu albo do modelu danych, w Power BI zawsze do modelu raportu. Wszystkie kroki czyszczenia, filtrowania i scalania działają identycznie.

Czy Power Query zmienia mój oryginalny plik z danymi?

Nie. Power Query nigdy nie modyfikuje pliku źródłowego. Zapamiętuje tylko listę kroków i wykonuje je na kopii danych przy każdym odświeżeniu. Oryginalny Excel czy CSV pozostaje nietknięty.

Co to jest język M i czy muszę się go uczyć?

M to język, w którym Power Query zapisuje każdy krok. Klikając w menu, generujesz kod M automatycznie, więc na początku nie musisz go pisać. Warto go poznać, gdy potrzebujesz transformacji niedostępnych w menu albo chcesz tworzyć własne funkcje. Cały kod podejrzysz w oknie Edytor zaawansowany.

Jaka jest różnica między Scalaniem (Merge) a Dołączaniem (Append)?

Scalanie łączy dwie tabele po wspólnym kluczu i dokłada kolumny (odpowiednik SQL JOIN). Dołączanie ustawia tabele jedna pod drugą i dokłada wiersze (odpowiednik SQL UNION). Merge stosujesz, gdy dane o jednym obiekcie są rozrzucone po kilku tabelach, Append, gdy masz te same kolumny w wielu plikach.

Dlaczego moje daty lub liczby zamieniają się w błędy po zmianie typu?

Najczęściej to kwestia ustawień regionalnych. Polska data 05.01.2026 albo liczba z przecinkiem dziesiętnym są przez inne locale odczytywane jako błąd. Zamiast zwykłej zmiany typu użyj opcji Zmień typ z ustawieniami regionalnymi i wskaż Polski (Polska).

Jak odświeżyć dane po podmianie pliku źródłowego?

Wystarczy jedno kliknięcie: Odśwież w Power BI albo Odśwież wszystko w Excelu. Power Query wykona dokładnie te same kroki na nowych danych. Jeśli struktura pliku się nie zmieniła, cały raport aktualizuje się sam.

Czy Power Query poradzi sobie z wieloma plikami naraz, na przykład całym folderem?

Tak. Zamiast pojedynczego pliku wskazujesz źródło typu Folder. Power Query wczyta wszystkie pliki o tej samej strukturze i połączy je w jedną tabelę. Gdy dorzucisz kolejny plik, wystarczy Odśwież.

Od czego zacząć naukę Power Query krok po kroku?

Od pełnego cyklu na jednym brudnym pliku: import, nagłówki, duplikaty, puste wiersze, typy danych i połączenie z drugą tabelą. Dokładnie ten cykl przeszliśmy w tym artykule. Jeśli wolisz uczyć się z trenerem na własnych danych, ten sam zakres realizujemy na warsztatowym szkoleniu Power BI.

Chcesz przećwiczyć Power Query z trenerem?

Ten artykuł to skrót. Jeśli wolisz przejść cały cykl na własnych danych, na warsztacie z trenerem praktykiem, mamy dwa szkolenia. Pierwsze prowadzi całą ścieżkę Business Intelligence w Power BI (Power Query, model danych, DAX i publikacja raportów), drugie skupia się w całości na Power Query w Excelu.

Kompleksowe szkolenie Power BI Desktop, DAX i Online w JSystems, prowadzi Sebastian Stasiak, 5 dni

Kompleksowe szkolenie Power BI (Desktop, Power Query, DAX, Online) →

Szkolenie Microsoft Excel Power Query w JSystems, prowadzi Sebastian Stasiak, 2 dni warsztatu

Szkolenie Microsoft Excel Power Query →

Najczęściej zadawane pytania

Czym różni się Power Query w Excelu od Power Query w Power BI?
To ten sam silnik i ten sam edytor. Różni się tylko miejsce, z którego go otwierasz, i to, gdzie lądują wyniki. W Excelu wynik trafia do tabeli w arkuszu albo do modelu danych, w Power BI zawsze do modelu, na którym budujesz raport. Wszystkie kroki czyszczenia, filtrowania i scalania działają identycznie.
Czy Power Query zmienia mój oryginalny plik z danymi?
Nie. Power Query nigdy nie modyfikuje pliku źródłowego. Zapamiętuje tylko listę kroków (przepis) i wykonuje je na kopii danych przy każdym odświeżeniu. Oryginalny plik Excela czy CSV pozostaje nietknięty.
Co to jest język M i czy muszę się go uczyć?
M to język, w którym Power Query zapisuje każdy krok. Klikając w menu, generujesz kod M automatycznie, więc na początku nie musisz go pisać ręcznie. Warto go poznać, gdy potrzebujesz transformacji niedostępnych w menu albo chcesz tworzyć własne funkcje. Podgląd całego kodu znajdziesz w oknie Edytor zaawansowany.
Jaka jest różnica między Scalaniem (Merge) a Dołączaniem (Append)?
Scalanie (Merge) to odpowiednik złączenia SQL JOIN. Łączy dwie tabele po wspólnym kluczu i dokłada kolumny (poszerza tabelę). Dołączanie (Append) to odpowiednik UNION. Ustawia tabele jedna pod drugą i dokłada wiersze (wydłuża tabelę). Merge stosujesz, gdy dane o jednym obiekcie są rozrzucone po kilku tabelach, Append, gdy masz te same kolumny w wielu plikach.
Dlaczego moje daty lub liczby zamieniają się w błędy po zmianie typu?
Najczęściej to kwestia ustawień regionalnych. Polska data 05.01.2026 w formacie dzień.miesiąc.rok albo liczba z przecinkiem dziesiętnym są interpretowane przez inne locale jako błąd. Zamiast zwykłej zmiany typu użyj opcji Zmień typ z ustawieniami regionalnymi i wskaż Polski (Polska).
Jak odświeżyć dane po podmianie pliku źródłowego?
Wystarczy jedno kliknięcie: Odśwież (w Power BI) albo Odśwież wszystko (w Excelu). Power Query wykona dokładnie te same kroki na nowych danych. Jeśli nowy plik ma tę samą strukturę, cały raport aktualizuje się sam, bez ręcznego czyszczenia.
Czy Power Query poradzi sobie z wieloma plikami naraz, na przykład całym folderem?
Tak. Zamiast pojedynczego pliku wskazujesz źródło typu Folder. Power Query wczyta wszystkie pliki o tej samej strukturze i połączy je w jedną tabelę. Gdy dorzucisz do folderu kolejny plik, wystarczy Odśwież, a nowe dane doklejają się automatycznie.
Od czego zacząć naukę Power Query krok po kroku?
Od pełnego cyklu na jednym brudnym pliku: import, uporządkowanie nagłówków, usunięcie duplikatów i pustych wierszy, poprawa typów danych i połączenie z drugą tabelą. Dokładnie ten cykl przechodzimy w tym artykule. Jeśli wolisz uczyć się z trenerem na własnych danych, ten sam zakres realizujemy na kompleksowym szkoleniu Power BI.

Komentarze (0)

Musisz być zalogowany by móc dodać komentarz. Zaloguj się przez Google

Brak komentarzy...