Power Query jest najnowszym dodatkiem od Microsoftu i przez to tym najmniej znanym. A szkoda, bo gdybym miał zaproponować motto dla tego programu, brzmiało by ono:
„Power Query – Oszczędzi Ci wiele godzin pracy, a Twój Szef nie musi o tym wiedzieć.”
Oto 11 powodów, dla których KAŻDY użytkownik Excela powinien znać ten dodatek.
1. Jest bezpłatnym dodatkiem ETL
Na rynku istnieje wiele płatnych narzędzi do przetwarzania danych (ta kategoria narzędzi jest często nazywana ETL – Extract, Transform & Load), ale zanim zaczniemy się nad nimi zastanawiać, warto poznać możliwości darmowego dodatku do programu Excel, który jest integralną częścią arkusza kalkulacyjnego. Jak w reklamie: Jeśli nie widać różnicy, po co przepłacać?
2. Został oficjalnie wypuszczony przez Microsoft
Ten argument może mieć duże znaczenie dla działu IT, który odpowiada za to, co i od kogo jest instalowane na komputerach użytkowników. Pierwsza wersja dodatku została udostępniona przez Microsoft w lipcu 2013 roku, już po premierze Excela 2013. Dlatego każdy, kto chce z niego skorzystać, mając wersję 2010 i 2013, potrzebuje ten dodatek doinstalować. Po instalacji dodatek stanie się widoczny na wstążce programu Excel.
Inaczej sprawa wygląda w programie Excel 2016 lub przy subskrypcji stacjonarnego Excela 365 – tam dodatek jest już wbudowany na karcie Dane > Pobieranie i Przekształcanie (w wersji angielskiej Data > Get & Transform).
Pierwszy link po wpisaniu w Google „Download Power Query” służy do pobrania dodatku:
https://www.google.com/search?q=download+power+query
3. Jest spójny pomiędzy wersjami Excela 2010 – 2013 – 2016
Microsoft bardzo często wypuszcza dodatki, które nie są spójne między poszczególnymi wersjami programu Excel. Możemy spędzić dużo czasu w jednej wersji, ale po przejściu na nowszą, cały nasz wysiłek „jak krew w piach” – jakby powiedział Adam Miauczyński. Tu na szczęście zrobiono wyjątek. Power Query wszędzie działa dokładnie tak samo i nie pojawiają się problemy z niespójnością. Co więcej, dodatek działa na wszystkich wersjach pakietu Office – od Home przez Standard, a na Professional Plus skończywszy. Zapytanie utworzone w Excelu 2010 zadziała w 2016 i na odwrót.
4. Oszczędza ogromną ilość czasu
To najważniejszy argument na liście, być może powinien być na pierwszym miejscu, żeby zwrócić uwagę (stąd dodałem na początku motto). W skali całej organizacji oszczędności mogą być liczone w dniach, co oznacza istną rewolucję. Dlaczego raporty często wyglądają tak, jak wyglądają? Bo analityk musi spędzić 90% czasu, żeby przygotować dane i na odpowiednią prezentację danych i zaprojektowanie dashboardu zostaje już niewiele czasu. Mając Power Query, będziesz mieć zatem więcej czasu na analizę danych i wyciąganie wniosków.
5. Pozwala zrezygnować z VBA
Świat automatyzacji raportów w Excelu można podzielić na 2 fazy: przed Query i po Query. Świat przed Query nie był zły. Dane były często przygotowywane metodą Kopiuj-Wklej, ale Analitycy obeznani z VBA (lub znający kogoś, kto zna kogoś, kto zna VBA) zautomatyzowali większą część poleceń za pomocą makr. Jednak wystarczy, że zmieni się ścieżka pliku lub dojdzie dodatkowa kolumna w środku danych źródłowych i nasz kod nie zadziała. Świat po Query jest zupełnie inny. Każdy analityk będzie w stanie przygotować podstawowe zapytania, wyklikując je ze wstążki, a ewentualne zmiany i edycja zapytania przebiegają bezproblemowo.
6. Zamienia nasze klikanie w ciąg powtarzalnych poleceń
Klikanie interfejsu nagrywa sekwencję poleceń, która będzie wykorzystywana w przyszłości – analogicznie, jak nagrywa się w Excelu makra. Z tą jednak różnicą, że zawsze mogę wrócić i zobaczyć, jak wyglądały moje dane w każdym kroku, usunąć niepotrzebne polecenia lub je wizualnie wyedytować.
7. Jest transparentny
Przejrzystość Power Query jest niewątpliwie jego mocną stroną. Rozpatrzmy scenariusz dramatyczny: jedyna w firmie osoba odpowiedzialna za raporty złamała nogę. Na jej miejsce przychodzi w trybie pilnym ktoś, kto zna trochę Excela i zwykle nawet nie wie, gdzie zacząć (od zrobienia kawy?). Mając plik z zapytaniami w Power Query, zastępca szybko odnajdzie istniejące w nim zapytania i uruchomi je, nie zwracając uwagi na kolejność realizacji zapytań – Power Query samo wybierze odpowiednią ścieżkę realizacji wszystkich zapytań w arkuszu. Jeżeli coś pójdzie nie tak, zastępca może sprawdzić szczegóły każdego zapytania i ewentualnie coś poprawić.
8. Umożliwia łączenie różnych źródeł danych
Power Query to pobranie danych nie tylko z jednego źródła i ich obróbka. Po pierwsze, zapytania można tworzyć także do zaawansowanych systemów źródłowych (np. Hadoop, Facebook, Webservice’y i wiele, wiele innych). Po drugie, zapytania można ze sobą łączyć (łączenie kilku tabel w jedną większą tabelę „na długość”, np. dołączanie danych dla poszczególnych regionów sprzedaży – Południe i Północ) lub scalać (łączenie kilku tabel w jedną większą tabelę „na szerokość”, analogicznie jak WYSZUKAJ.PIONOWO na wielu kolumnach na raz). Zwłaszcza ta druga operacja – scalanie – ma dużo wspólnego z operacjami wykonywanymi w bazach danych: wybieramy ID, po którym dokonujemy łączenia.
9. Daje zaawansowane możliwości
Jeżeli klikanie poleceń na wstążce jest dla Ciebie nudne, kup książkę o języku M i pisz polecenia samodzielnie. Opcja Edytora zaawansowanego daje olbrzymie możliwości tym, którzy szukają mocniejszych doznań w pracy z Power Query. Już sama nazwa najpopularniejszej książki nt. tego języka rzuca analitykowi wyzwanie: „M Is for (Data) Monkey”. Także zwykły użytkownik Query może być czasem zmuszony odnaleźć jakąś funkcję (np. do utworzenia kolumny), ale nie przysporzy to żadnych trudności.
10. Po napisaniu zapytań po prostu klikasz Odśwież
To moja ulubiona część pracy z Power Query. Raz napisane polecenia działają już na zawsze po kliknięciu Odśwież. Czas ładowania danych (zwłaszcza przy dużych zbiorach) możemy spędzić na kawie i promowaniu Power Query „wtajemniczonym” pracownikom swojej organizacji.
11. Do jego poznania wystarczy 1 dzień
Tak. Tylko tyle i aż tyle. Żeby przejść przez podstawowe zastosowania Power Query, a później wykonać samodzielnie kilka ćwiczeń, wystarczy jeden dzień. To może być najlepiej zainwestowany jeden dzień w życiu analityka – no może póki Microsoft nie wypuści czegoś lepszego. Narzędzie jest proste w nauce, intuicyjne, logiczne i przyjemne do nauki. Czy jesteś gotowy na taką przygodę?
Warto napisać jeszcze o kruczkach, które występują przy korzystaniu z PQ, bo jest to narzędzie jeszcze niedopracowane, albo żeby lepiej rzecz ująć, mocno oparte o silniki bazodanowe a co za tym idzie trzeba umieć się w pewnym momencie umieć po nim poruszać zwłaszcza w przypadku błędów, które się zdarzają… 🙂
Dziękuję za komentarz. Spróbujemy zebrać listę naszych doświadczeń i dla zachowania równowagi opisać w najbliższej przyszłości „ciemne strony” Power Query.
Trochę takich uwag jest, do tego trzeba dodać fakt braku polskiego wsparcia (dla mnie niekoniecznie istotne, jednak jest to jakiś minus dla polskiego użytkownika). W razie gdyby ja chętnie służę pomocą, trochę już się z Query od strony praktyczno-raportowej obyłem.
Dzień dobry,
Bardzo fajny wpis 🙂 Od niedawna zaczęłam korzystać z dodatku Power Query i do tej pory było wszystko ok, ale zaczął mi się pojawiać komunikat „Nie można przenieść komórek w filtrowanym zakresie ani w filtrowanej tabeli”. Czy wie Pan może co on oznacza, bo nigdzie nie mogę znaleźć odpowiedzi i nie wiem co robię źle.
Pozdrawiam
Nie spotkałem się z tym komunikatem. Jeśli może Pani podesłać plik, spróbuję zerknąć do środka i pomóc.
Czy udało się znaleźć rozwiązanie? Szukałem frazy w internecie i również nie znalazłem odpowiedzi.
Wkleiłem nową bazę danych do arkusza ze starą. Zaznaczyłem duplikaty formatowaniem warunkowym. Wyfiltrowałem duplikaty. Mam teraz x wierszy, których nie mogę usunąć jedną akcją – muszę każdy osobno. Pojawia się ten komunikat: „Nie można przenieść komórek w filtrowanym zakresie ani w filtrowanej tabeli”. Dodam, że jest to tabela.
UPDATE: Rozwiązałem usuwając je po skopiowaniu do pomocniczego arkusza, w którym dane nie były sformatowane jako tabela.
Jeśli jest inne rozwiązanie, bez omijania tabeli, będę wdzięczny za wiadomość.
Hej Kamil, nie potrafię wygenerować tego błędu, więc nie bardzo umiem podpowiedzieć. Wydaje mi się, że jest to jakieś działanie czysto Excelowe (nie dotyczące Power Query), ale musiałbym otrzymać plik lub screen z Excela z błędem, żeby podpowiedzieć, jak z tego wybrnąć.
Panie Bartku,
Podobał mi się artykuł. 🙂
Jest bardzo dobrze uargumentowany i ma moc przekonywania.
Przed jego przeczytaniem miałem podobne zdanie i potwierdziło mi się po odbyciu dwudniowego(!) kursu u Konkurencji 🙂
Podekscytowany zainspirowany nowymi umiejętnościami zacząłem ćwiczyć swoje pomysły.
No i, jak zwykle na początku samodzielnej jazdy:
„Formula.Firewall: Element Zapytanie „rok_archiwum” (krok „Dodano kolumnę niestandardową”) próbuje uzyskać dostęp do źródeł danych z poziomami prywatności, które nie mogą być używane razem. Utwórz ponownie tę kombinację danych.”
Instruktor zrobił przykład, który działa.
Jedno źródło – Internet (strona NBP) daje w wyniku funkcię tablicową data waluta kurs, drugie – plik Excela z transakcjami w walutach.
Ja robię przykład, który się różni tylko lokalizacją mojego pliku Excela.
Kombinuję już parę godzin.
I nie mogę przejść tego komunikatu. Trzeba powtórzyć definicję zapytania do NBP? Czy do pliku Excela?
Wiem, że na początku definiuje się tryb dostępu do strony internetowej, ale tam było zadeklarowane „publiczne”.
Trzeba to jeszcze raz zadeklarować? I jak się dostać do właściwości zapytania, które zawiera te deklaracje. Nie szukałem za długo, bo jestem pewny, że są public, skoro zmiana pliku Excela na taki sam w innej lokalizacji to powoduje.
Oba foldery niczym się nie różnią oprócz odgałęzienia ścieżki (nawet początek jest taki sam).
Ale z plikiem trenera to działa.
Może na jesieni się zapiszę na online…Cudów nie ma , trzeba zawsze sobie poobijać rączki…
Gratuluję wyczucia przełomu. Tak, to JEST przełom, ale przełom nie oznacza raju. Na pewno nie w jeden dzień się nie dokonuje.
Pozdrawiam. Krzysztof Rumiński
Cześć Krzysztof, dziękuję za obszerny komentarz. Jest zawsze parę przeszkód na początek. O tej z błędem Firewall pisałem w innym artykule. Może Ci się przyda: https://excelbi.pl/jak-pobrac-parametr-zapytania-sql-z-komorek-arkusza-excel-z-uzyciem-power-query/