Tabela Przestawna

Tabela przestawna to idealne narzędzie do analizy danych. Pozwala na szybką i sprawną agregację danych, tworzenie zestawień i raportów. Jest naprawdę świetnym narzędziem, szczególnie w przypadku dużej ilości danych.
Skorzystam tu z przykładu danych opublikowanych na stronie PKW:
https://wybory.gov.pl/sejmsenat2023/pl/dane_w_arkuszach
dostępne są listy kandydatów do sejmu i senatu, uzupełniony już o liczbę otrzymanych głosów oraz decyzję, kto z otrzymał mandat.

Listę kandydatów do sejmu opisywałam już tu:
Statystyki wyborcze czyli ćwiczymy Excela
Chcąc w oparciu o te dane stworzyć tabelę przestawną, zaznaczamy po prostu wszystkie kolumny i z karty Wstawianie wybieramy Tabela przestawna.

kliknij obrazek, aby powiększyć

Otworzy się formularz, gdzie definiujemy miejsce wstawienia tabeli przestawnej – domyślnie jest to nowy arkusz.

Po zatwierdzeniu zobaczymy diagram i siatkę list pól tabeli.

kliknij obrazek, aby powiększyć

Sama tabela będzie widoczna po lewej stronie, a jej układ ustawiamy po stronie prawej.
Załóżmy, że chcemy sprawdzić liczbę głosów oddanych na poszczególne listy. Przeciągamy odpowiednie pola na dolny diagram:

kliknij obrazek, aby powiększyć

Ponieważ pole Liczba głosów ma format liczbowy – domyślnie ustawia się tam wartość sumy. Oczywiście można to zmienić i/lub sformatować – wystarczy kliknąć lewym przyciskiem myszy na daną wartość  i z menu podręcznego wybrać Ustawienia pola wartości…

kliknij obrazek, aby go powiększyć

Można tam też zmienić nazwę, pokazać wartość obliczoną, sformatować wartości – możliwości jest wiele.

kliknij obrazek, aby powiększyć

Chcąc jeszcze bardziej rozbudować tabelę, można np. dołożyć jeszcze kolejne wiersze np. przynależność do partii w ramach poszczególnych list, choć w tym konkretnym przypadku jest to nieco mylące, gdyż ta sama partia w różnych wierszach ma nieco inną nazwę np. PL2050 Szymona Hołowni i Polska 2050 Szymona Hołowni.
Na pewno jednak warto zainteresować ilością mandatów otrzymanych przez każdy z komitetów. Można to zrobić na kilka różnych sposobów, ale to już temat na kolejne notki.
Wstępna wersja mojej analizy wygląda tak:

kliknij obrazek, aby powiększyć

Jest tu też formatowanie warunkowe, porównujące procent głosów oddanych na partię i procent otrzymanych mandatów – namacalny efekt metody D’Hondta.
A dla chętnych – wersja 1  pliku do pobrania tu:

Wyniki wyborów do sejmu – wersja 1

 


Kurs Excel - tabele przestawne  

Statystyki wyborcze czyli ćwiczymy Excela

Przed nami wybory. Niezależnie od wszelki analiz politycznych i socjologicznych warto też na nie spojrzeć od strony Excela. Na stronie PKW:
https://wybory.gov.pl/sejmsenat2023/pl/dane_w_arkuszach
dostępne są listy kandydatów w wyborach w formie plików Excela xlsx oraz csv.  Warto zainteresować się szczególnie listą kandydatów w wyborach do Sejmu. Ponad 6500 kandydatów (czyli z punktu widzenia Excela – rekordów) to świetny materiał do ćwiczeń. Można naprawdę w całkiem fajny sposób podszkolić własne umiejętności.

Po pobraniu, rozpakowaniu i otwarciu pliku mamy taki widok:

kliknij obrazek, aby powiększyć

Teraz wystarczy tylko sformatować.
Zaznaczamy pierwszy wiersz i na karcie Dane wciskamy przycisk Filtruj

kliknij obrazek, aby powiększyć

W ten sposób możemy bez problemu wyfiltrować interesujące nas dane np.:

W nagłówku kolumny wystarczy kliknąć na strzałkę z prawej strony, aby otworzyć filtr i wybrać konkretne dane.
W nagłówku kolumny, w której są wyfiltrowane dane zamiast strzałki widoczny jest znaczek lejka

Chcąc odfiltrować dane w pojedynczej kolumnie klikamy na ten znaczek i zaznaczamy opcję Zaznacz wszystko.

W dużych zakresach danych warto też pomyśleć, aby nie stracić z oczu nagłówka.
Na karcie Widok wybieramy Zablokuj okienka i Zablokuj górny wiersz.

Nawet przewijając w dół do kolejnych wierszy – nagłówek będzie zawsze widoczny.
W bardziej uniwersalnej opcji można ustawić się w dowolnej komórce i wybrać pierwszą opcję czyli Zablokuj Okienka. Od tej pory część arkusza powyżej i z lewej strony wybranej komórki będzie zawsze widoczna.

I jeszcze jedna uwaga. To, co widoczne jest w tym przykładzie to nie jest Tabela jako obiekt Excela, a jedynie Zakres komórek. I nie chodzi tu wcale o formatowanie, obramowanie komórek itp. Ale to już temat na osobną notkę.

 


Kurs Efektywna praca w Excelu - porady i triki

 

Funkcja VBA Vlookup

Funkcja Vlookup w VBA to jedna z funkcji arkuszowych VBA. Wyszukuje określoną wartość w pierwszej kolumnie tabeli/zakresu komórek i zwraca wartość z określonej kolumny tego samego wiersza.

Argumenty funkcji to:

    • Arg1 – wartość do wyszukania w pierwszej kolumnie tabeli/zakresu. Argument obowiązkowy;
    • Arg2 – tabela/zakres komórek. Argument obowiązkowy
    • Arg3 – numer kolumny, z której ma być zwrócony wynik. Argument obowiązkowy
    • Arg4 – wartość logiczna True lub False. Dla wartości True wyszukiwana będzie wartość dopasowana, dla wartości False – dokładna. Argument opcjonalny, wartość domyślne to True.

W stosowaniu funkcji ważne są 2 sprawy:

    • szukana wartość musi być zawsze w pierwszej kolumnie tabeli/zakresu
    • jeżeli szukana wartość występuje kilka razy – funkcja zawsze zwróci tylko odwołanie do pierwszego jej wystąpienia
    • jeżeli wyszukiwana wartość nie występuje w zakresie – funkcja zwróci błąd wykonania 1004 – konieczne jest jego obsłużenie w kodzie

Odpowiednikiem funkcji w Excelu jest funkcja Wyszukaj.Pionowo.


Kurs Makra i VBA w Excelu dla początkujących

 

Błąd wykonania 1004

Błąd wykonania 1004

Błąd ten pojawia się w sytuacji, gdy wprawdzie kod jest prawidłowy, ale dane będące argumentami np.funkcji arkuszowych odwołują się do błędnych danych w arkuszu.
Dla przykładowego kodu może to wyglądać tak:

Public Sub MojaFunkcja()
Wynik = WorksheetFunction.VLookup(“lipiece”, Worksheets(“Arkusz4”).Range(“A1:B13”), 2, False)
End Sub

Podczas wykonania tego fragmentu kodu pojawił się błąd jw., gdyż w tabeli nie ma komórki  z wartością “lipiece”. Tu w celi eliminacji błędu można zmienić ostatni argument funkcji VLookup na True (choć tu trzeba uważać). Gorzej jeżeli np.w funkcji pojawi się np.za duża liczba kolumn (większa od ilości kolumn tabeli) – tu zdecydowanie trzeba skorygować kod.
Generalnie każdy przypadek wystąpienia takiego błędu trzeba dokładnie przeanalizować. No i włączyć obsługę błędów, która zabezpieczy kod przed różnymi niespodziankami.

 

Funkcje arkuszowe VBA

Funkcje arkuszowe VBA to funkcje Excela, dostępne w ramach obiektu VBA Worksheet.Function. Działają tak samo, jak bezpośrednio w arkuszu.

Właściwie WorksheetFunction jest częścią obiektu Application, ale jak wiele innych może być stosowany samodzielnie.
Czyli można stosować w kodzie zarówno:
Application.WorksheetFunction….
jak i
WorksheetFunction…

Nazwy funkcji w ramach obiektu są w języku angielskim.


Kurs Makra i VBA w Excelu dla początkujących