Nie znasz dobrze obsługi Excela? A może nie znasz jej wcale? Doskonale wiem, że w dzisiejszych czasach i realiach, znajomość tego programu jest nie tylko niezbędna, ale przede wszystkim korzystna dla Ciebie samego. Moje szkolenie z Excela online pokaże Ci, że arkusz kalkulacyjny nie jest wcale Twoim wrogiem, a sprzymierzeńcem w porządkowaniu i analizie danych - nie tylko liczbowych. Stworzyłem kurs Excel online na każdym poziomie, zarówno dla osób początkujących, średniozaawansowanych, jak i zaawansowanych. Znajdziesz u mnie także szkolenie z Excela online dedykowane specjalnie przedsiębiorcom. Każdy kurs zawiera starannie wyselekcjonowany zakres wiedzy i zagadnień, które odpowiadają na ściśle sprecyzowane potrzeby jego użytkowników.
Excel - kurs online. Dlaczego warto?
Zastanawiasz się, czy Excel i kurs online to dobre połączenie? Czy taka forma nauki pracy z arkuszem kalkulacyjnym może być efektywna? Pozwól, że rozwieję Twoje wątpliwości.
Od lat z powodzeniem zajmuję się dzieleniem swoją wiedzą zdalnie. Ta forma nauki, szczególnie w ostatnim czasie, mocno zyskała na popularności, a jej techniki znacząco się rozwinęły. Abyś mógł biegle posługiwać się programem Excel, każdy swój kurs zaprojektowałem z ogromną starannością i w oparciu o zasady metodyki nauczania na odległość.
Jednak szkolenie z Excela online, to przede wszystkim ogromna wygoda dla Ciebie, ponieważ nie musisz wychodzić z domu, możesz uczyć się wraz ze mną z dowolnego miejsca i w wybranym przez siebie czasie. Dodatkowo każdy mój kurs Excela online zawiera materiały dydaktyczne dostępne dla Ciebie już po zakończeniu szkolenia. Krótkie nagrania filmowe, prezentujące różnego rodzaju działania w arkuszu kalkulacyjnym, które w dowolnej chwili możesz zatrzymać, odtworzyć ponownie, by jeszcze raz przeanalizować i utrwalić wiedzę, to doskonały sposób, by opanować Excel. Kurs online to nie tylko wygoda, to także oszczędność Twojego i mojego czasu - zamiast dojeżdżać w umówione miejsce, możemy poświęcić więcej chwil na ćwiczenia i praktykę.
W tym poście
zajmiemy się usuwaniem pustych kolumn w Power Query. Do mojego kursu na Udemy
dostałem zapytanie czy jest możliwe szybkie usunięcie pustych kolumn z danych.
W tego typu sytuacjach sam szukam odpowiedzi w gogle. Rozwiązanie znalazłem na
stronie www.community.powerbi.com, mianowicie kod funkcji, którą
będziemy mogli wykorzystać w naszym zadaniu (rys. nr 1).
Rys. nr 1 – kod funkcji do usuwania pustych kolumn
Kopiujemy
funkcję za pomocą skrótu klawiszowego Ctrl+C, a następnie wklejamy za pomocą
skrótu Ctrl+V do Notepada ++, gdzie możemy podejrzeć elementy funkcji w
kolorach (rys. nr 2).
Rys. nr 2 – formuła funkcji do usuwania pustych kolumn w Notepadzie ++
Co istotne w
tym zapisie – funkcja pobiera nam dane jako tabelę i usuwa puste kolumny z
danych. Pobranej funkcji możemy użyć w Power Query. Załóżmy, że mamy
przykładowe dane pokazane na rys. nr 3. Wynika z nich że zawierają one dużo
pustych kolumn.
Rys. nr 3 – Przykładowe dane
Rozwijamy
polecenie Pobierz dane (punkt 2 na rys. nr 4) z karty Dane (punkt
1), następnie rozwijamy polecenie Z innych źródeł (punkt 3) i wybieramy
polecenie Pustezapytanie (punkt 4).
Rys. nr 4 – ścieżka dostępu do polecenia Puste zapytanie
Otworzy nam
się pusty Edytor zapytań Power Query, gdzie musimy wkleić nasz kod M, czyli
zapis funkcji skopiowany z Notepada++. Wybieramy polecenie Edytor
zaawansowany z karty Narzędzia główne (rys. nr 5).
Rys. nr 5 – polecenie Edytor zaawansowany
Otworzy nam
się okno Edytora zaawansowanego, gdzie wklejamy za pomocą skrótu klawiszowego
Ctrl+V naszą skopiowaną wcześniej funkcję (rys. nr 6). Zapis powinien wyglądać
następująco:
(tbl as table) =>
let
Headers
= Table.ColumnNames(tbl),
Result
= Table.SelectColumns(tbl),
List.Select(Headers,
each List.MatchesAny(Table.Column(tbl,_),
each_
<> null)))
in
Result
Rys. nr 6 – Edytor zaawansowany z zapisem funkcji
Wklejoną
funkcję zatwierdzamy w Edytorze zaawansowanym przyciskiem Gotowe. Otrzymamy
gotową funkcję przedstawioną na rys. nr 7.
Rys. nr 7 – Funkcja w Power Query
Nie ma znaczenia,
że zapis tej funkcji był w języku angielskim. Istotne jest, że ta funkcja
pobiera tabelę i odpowiednio ją przekształca. Nasze zapytanie nazywa się
Zapytanie 1, więc zmienimy jego nazwę w Ustawieniach zapytania na
DeleteEmptyColumns, czyli Usuń puste kolumny. Co istotne nasze zapytanie ma
postać funkcji co widać przy nazwie zapytania – skrót fx (rys. nr 8).
Rys. nr 8 – Zapytanie w postaci funkcji – oznaczenie fx
Sposób,
którego używamy jest najprostszym sposobem użycia tej funkcji, czyli zaczytanie
pustego zapytania i wstawienie do niego funkcji, następnie zaczytanie danych z
Excela w formie tabeli do drugiego zapytania. Nie wychodząc z Power Query
możemy rozwinąć sobie polecenie Nowe źródło (punkt 1 na rys. nr 9) na
karcie Narzędzia główne, następnie rozwinąć polecenie Plik (punkt
2) i wybrać polecenie Excel (punkt 3).
Rys. nr 9 – ścieżka dostępu do polecenia Excel
Otworzy nam
się okno Importowania danych, w którym musimy znaleźć plik z naszymi
przykładowymi danymi z rys. nr 3. Wybieramy plik i klikamy na niego dwukrotnie
lub zatwierdzamy nasz wybór przyciskiem Otwórz (rys. nr 10).
Rys. nr 10 – Okno Importowania danych
Otworzy nam
się okno Nawigatora, gdzie na liście elementów wybieramy jeden arkusz, ten
który chcemy przekształcić – o nazwie Dane. Nasz wybór zatwierdzamy przyciskiem
OK (rys. nr 11).
Rys. nr 11 – okno Nawigator
Arkusz ten
zostanie zaczytany do Power Query jako odrębne zapytanie co widać na rys. nr 12.
Rys. nr 12 – Arkusz zaczytany jako odrębne zapytanie
Dodatkowo
możemy usunąć krok Zmieniono typ z Zastosowanych kroków (Ustawienia zapytania),
ponieważ krok ten nic nie wnosi do naszych danych.
Aby usunąć
puste kolumny wystarczy przejść na zapytanie z naszą funkcją i w polu tbl
(Wprowadź parametr) wybrać naszą zaczytaną tabelę z drugiego zapytania. Wybór
tabeli zatwierdzamy przyciskiem Wywołaj (rys. nr 13).
Rys. nr 13 – Wprowadzanie parametru funkcji (wybór tabeli z drugiego zapytania)
W wyniku
zadziałania funkcji otrzymamy dane w formie tabeli, z których zostały usunięte
wszystkie puste kolumny (rys. nr 14).
Rys. nr 14 – Dane w formie tabeli po usunięciu pustych kolumn
Co istotne
do poprawnego zadziałania tej funkcji musi być całkowicie pusta kolumna (np.
kolumna nr 7 ma test w przedostatnim wierszu i już nie została usunięta). Po
nagłówkach kolumn doskonale widać jak dużo kolumn zostało usuniętych.
Podsumowując
pokazaliśmy sposób usunięcia pustych kolumn w Power Query znaleziony w
internecie. Jeśli jesteś bardziej zaawansowanym użytkownikiem możesz zaczytać
dane do Power Query i wkleić tą funkcję pod razu w jednym zapytaniu. Innym
sposobem wywołania funkcji jest polecenie Wywołajfunkcjęniestandardową
z karty Dodaj kolumnę (rys. nr 15).
Rys. nr 15 – polecenie Wywołaj funkcję niestandardową
Tak
przygotowane dane musimy załadować do Excela, w tym celu wybieramy polecenie Zamknij
i załaduj z karty Narzędzia główne (rys. nr 16).
Rys. nr 16 – polecenie Zamknij i załaduj
Nie
przekształcaliśmy dodatkowo danych, zależało nam jedynie na usunięciu pustych
kolumn z danych. Zapytania zostały załadowane do Excela jako połączenia (ze
względu na to, że mamy kilka zapytań) – rys. nr 17.
Rys. nr 17 – Zapytania załadowane do Excela jako połączenia
Zaznaczamy
zapytanie Wywołano funkcję i klikamy na nie prawym przyciskiem myszy, następnie
z podręcznego menu wybieramy polecenie Załaduj do (rys. nr 18).
Rys. nr 18 – polecenie Załaduj do
Otworzy nam
się okno Importowania danych, gdzie wybieramy sposób wyświetlania danych jako
Tabela i wskazujemy miejsce wstawienia danych, czyli Istniejący arkusz oraz
wskazujemy konkretną komórkę. Tak ustawione parametry importowania danych
zatwierdzamy przyciskiem OK (rys. nr 19).
Rys. nr 19 – okno Importowania danych
Otrzymamy
dane wstawione do Excela przedstawione na rys. nr 20.
Rys. nr 20 – Dane zaczytane do Excela
Tak
przygotowane dane wymagają jeszcze obróbki, mianowicie uporządkowania ich,
usunięcia zbędnych wierszy i zbędnych informacji. Najważniejsze że udało nam
się wykonać pierwszy krok, czyli automatyczne usuwanie niepotrzebnych kolumn za
pomocą funkcji znalezionej w internecie.
Książka Mistrz Excela + promo na 35 urodziny
Chcę Cię poinformować, że w końcu udało mi zebrać środki i dopiąć wszystkich formalności, żeby powstało II wydanie mojej książki Mistrz Excela (zostałem wydawcą) II wydanie jest wzbogacone o rozdział (nr 22) wprowadzający w genialny dodatek (Power Query) do Excela służący do pobierania, łączenia i wstępnej obróbki danych z wielu źródeł.
Książka Mistrz Excela to historia Roberta, który musi poznać dobrze Excela na potrzeby nowej pracy. Książka jest napisana w formie rozmów Roberta z trenerem, dzięki temu jest przystępniejsza w odbiorze niż standardowe książki techniczne pisane językiem "wykładowym".
Rozmowy zostały podzielone na 22 tematyczne rozdziały, które krok po kroku wprowadzają Cię w tajniki Excela. Robert zaczyna naukę od poznania ciekawych aspektów sortowania i filtrowania danych w Excelu, przechodzi przez formatowanie warunkowe, tabele przestawne, funkcje wyszukujące i wiele innych tematów, by na koniec poznać wstępne informacje o VBA i Power Query. A wszystko to na praktycznych przykładach i z dużą ilością zdjęć.
Żebyś mógł śledzić postępy Roberta, do książki dołączone są pliki Excela, na których pracuje Robert.
Na powyższej stronie znajdziesz dokładniejszy opis książki, opinie osób, które kupiły I wydanie oraz podgląd pierwszego rozdziału książki, żeby upewnić się, czy forma rozmów przy nauce Excela jest dla Ciebie. Jeśli książka Ci się spodoba poinformuj o niej swoich znajomych.
W ramach promocji na moje 35 urodziny możesz też mieć każdy z moich kursów wideo na Udemy za zaledwie 35 zł. Linki do kursów zamieszczam poniżej. W każdym kursie są udostępnione filmy do podglądu, byś mógł się przekonać czy dany kurs jest dla Ciebie.
W dzisiejszym poście zajmiemy się błędem, który pojawia się przy pobieraniu danych, kiedy wcześniej nałoży się filtr. Załóżmy, że mamy w przykładowych danych zakres, który nie jest tabelą. Zaznaczamy ten zakres i będziemy chcieli go nazwać — po prostu NazwanyZakres (w miejscu oznaczonym strzałką na rys. nr 1).
rys. nr 1 — nazywanie zaznaczonego zakresu
Nazwanie
zakresu pozwala nam wrócić do niego z każdego miejsca w arkuszu (z każdej
komórki) rozwijając okno, w którym nazywaliśmy ten zakres (rys. nr 2).
rys. nr 2 — powrót do nazwanego zakresu z każdego miejsca w arkuszu
Kiedy mamy
nazwany zakres możemy za pomocą polecenia Z tabeli/zakresu z karty Dane
pobrać go do Power Query (rys. nr 3).
rys. nr 3 — pobieranie danych do Power Query za pomocą polecenia Z tabeli/zakresu
W takim
przypadku Power Query nie ma żadnych problemów, pobiera dane prawidłowo.
Otworzy nam się Edytor zapytań z wczytanym zaznaczonym zakresem (rys. nr 4).
rys. nr 4 — edytor zapytań z wczytanym zakresem z Excela
Problem
pojawia się jeśli na ten nazwany zakres w Excelu nałożymy filtr, a następnie za
pomocą polecenia Z tabeli/zakresu z karty Dane wczytamy ten zakres do Power
Query. Otworzy nam się edytor zapytań Power Query, ale z błędem (rys. nr 5).
rys. nr 5 — edytor zapytań z wczytanym zaznaczonym zakresem z błędem
Błąd wynika
z tego, że Power Query nie odczytuje zakresu danych tylko próbuje odczytać
filtr, który jest nałożony na ten zakres (rys. nr 6).
rys. nr 6 — próba odczytania danych nie z zaznaczonego zakresu a z nałożonego filtru
Możemy
przyjrzeć się dokładniej funkcji Excel.CurrentWorkbook, gdzie widzimy, że przy
nazwie filtru jest błąd, ponieważ Power Query próbuje pobrać tabelę, której
nazwa nie istnieje (rys. nr 7).
rys. nr 7 — Próba pobrania danych z tabeli, której nazwa nie istnieje
Jako tester
lubię sobie czasem poeksperymentować, poszukać sposobu na obejście tego błędu.
W innym pliku rozwijamy polecenie Pobierz dane (punkt 2 na rys. nr 8) z
karty Dane (punkt 1), następnie rozwijamy polecenie Z pliku
(punkt 3) i wybieramy Ze skoroszytu (punkt 4).
rys. nr 8 — ścieżka dostępu do polecenia Ze skoroszytu
Otworzy nam
się okno Importowanie danych, gdzie wybieramy nasz plik klikając na niego dwa
razy (rys. nr 9).
rys. nr 9 — okno Importowania danych
Otworzy nam
się okno Nawigator, gdzie możemy podejrzeć zawartość skoroszytu, czyli jego
poszczególne elementy (rys. nr 10).
rys. nr 10 — okno Nawigator, gdzie możemy podejrzeć zawartość skoroszytu
Jeśli zaznaczymy sobie cały plik Excela i wciśniemy przycisk Edytuj, to zobaczymy wszystkie elementy i zakresy z tego pliku. Otworzy nam się edytor zapytań Power Query z listą tych wszystkich elementów. Tutaj Power Query użyje innej funkcji Excel.Workbook (rys. nr 11).
rys. nr 11 — Edytor zapytań z listą wszystkich elementów znajdujących się w skoroszycie
W naszych
danych nie interesują nas arkusze, czyli odfiltrujemy kolumnę Kind. W tym celu
klikamy na trójkąt przy nazwie kolumny Kind i odznaczamy checkbox przy nazwie
Sheet (czyli arkusz). Filtr zatwierdzamy przyciskiem OK (rys. nr 12).
rys. nr 12 — nakładanie filtru (odfiltrowanie arkuszy)
Otrzymamy
tabelę tylko ze zdefiniowanymi nazwami przedstawioną na rys. nr 13.
rys. nr 13 — tabela ze zdefiniowanymi nazwami
Interesuje
nas jeszcze kolumna Hidden, która pokazuje które elementy są ukryte. Filtr
nałożony na dane jest ukryty, natomiast nazwany zakres jest widoczny. Przy
pobieraniu danych Power Query sięga niestety po tą tabelę, która jest ukryta
(rys. nr 14).
rys. nr 14 — elementy ukryte — Hidden
W takim
rozwiązaniu Power Query nie ma problemu i poprawnie odczytuje dane.
Jak możemy
obejść ten błąd przy standardowym pobieraniu danych do Power Query?
Wyłączamy
filtr w naszym nazwanym zakresie. Jest on niewidoczny ale dalej się tam
znajduje. Stworzyliśmy tabelę pomocniczą z zakresem do filtrowania i właśnie na
nią nakładamy ten filtr za pomocą skrótu klawiszowego Ctrl+Shift+L (rys. nr 15).
rys. nr 15 — nakładanie filtru za pomocą skrótu klawiszowego Ctrl+Shift+L
Teraz jeśli
pobierzemy dane z tego zakresu za pomocą polecenia Z tabeli/zakresu z karty
Dane, otworzy nam się edytor zapytań Power Query z wczytanym zakresem (rys. nr 16).
rys. nr 16 — Edytor zapytań z wczytanym zakresem
W kroku
Źródło w Zastosowanych krokach możemy podejrzeć sobie funkcję użytą przez Power
Query. Możemy zauważyć, że dalej pojawia nam się błąd mimo, że dane zostały
wczytane (rys. nr 17).
rys. nr 17 — funkcja Excel.CorrentWorkbook
Sposobem na
zlikwidowanie błędu jest zmiana właściwości zakresu w VBA (rys. nr 18).
rys. nr 18 — zmiana właściwości zakresu w VBA
Wynika z
tego, że funkcja Power Query źle odwołuje się do zakresu i stąd wynika problem
(zły zapis zakresu – pojedynczy cudzysłów).
Podsumowując
celem tego filmu było pokazanie, że Power Query nie zawsze chce zwracać dane,
których potrzebujesz. Przede wszystkim w sytuacji kiedy nakładasz filtr na
nazwany zakres.
Książka Mistrz Excela + promo na 35 urodziny
Chcę Cię poinformować, że w końcu udało mi zebrać środki i dopiąć wszystkich formalności, żeby powstało II wydanie mojej książki Mistrz Excela (zostałem wydawcą) II wydanie jest wzbogacone o rozdział (nr 22) wprowadzający w genialny dodatek (Power Query) do Excela służący do pobierania, łączenia i wstępnej obróbki danych z wielu źródeł.
Książka Mistrz Excela to historia Roberta, który musi poznać dobrze Excela na potrzeby nowej pracy. Książka jest napisana w formie rozmów Roberta z trenerem, dzięki temu jest przystępniejsza w odbiorze niż standardowe książki techniczne pisane językiem "wykładowym".
Rozmowy zostały podzielone na 22 tematyczne rozdziały, które krok po kroku wprowadzają Cię w tajniki Excela. Robert zaczyna naukę od poznania ciekawych aspektów sortowania i filtrowania danych w Excelu, przechodzi przez formatowanie warunkowe, tabele przestawne, funkcje wyszukujące i wiele innych tematów, by na koniec poznać wstępne informacje o VBA i Power Query. A wszystko to na praktycznych przykładach i z dużą ilością zdjęć.
Żebyś mógł śledzić postępy Roberta, do książki dołączone są pliki Excela, na których pracuje Robert.
Na powyższej stronie znajdziesz dokładniejszy opis książki, opinie osób, które kupiły I wydanie oraz podgląd pierwszego rozdziału książki, żeby upewnić się, czy forma rozmów przy nauce Excela jest dla Ciebie. Jeśli książka Ci się spodoba poinformuj o niej swoich znajomych.
W ramach promocji na moje 35 urodziny możesz też mieć każdy z moich kursów wideo na Udemy za zaledwie 35 zł. Linki do kursów zamieszczam poniżej. W każdym kursie są udostępnione filmy do podglądu, byś mógł się przekonać czy dany kurs jest dla Ciebie.