Z tego przewodnika dowiesz się, jak i dlaczego używać interfejsu Google Sheets API do tworzenia tabel przestawnych w arkuszach kalkulacyjnych.
Czym jest tabela przestawna?
Tabele przestawne umożliwiają podsumowywanie danych w arkuszu kalkulacyjnym poprzez automatyczne agregowanie, sortowanie, zliczanie lub uśrednianie danych i wyświetlanie podsumowanych wyników w nowej tabeli. Tabela przestawna działa jak zapytanie dotyczące źródłowego zbioru danych. Te dane źródłowe znajdują się w innym miejscu arkusza kalkulacyjnego, a tabela przestawna przedstawia przetworzony widok danych.
Rozważmy na przykład ten zbiór danych o sprzedaży:
| A | B | C | D | E | F | G | |
| 1 | Kategoria produktu | Numer modelu | Koszt | Ilość | Region | Pracownik działu sprzedaży | Data wysyłki |
| 2 | Diabelski młyn | W-24 | 20,50 USD | 4 | zachód | Beth | 01.03.2016 |
| 3 | Drzwi | D-01X | 15 zł | 2 | południe | Amir | 15.03.2016 r. |
| 4 | Silnik | ENG-0134 | 300 PLN | 1 | północ | Carmen | 20.03.2016 |
| 5 | Rama | FR-0B1 | 34 USD | 8 | wschód | Hannah | 12.03.2016 r. |
| 6 | Panel | P-034 | 18 PLN | 4 | północ | Devyn | 2.04.2016 |
| 7 | Panel | P-052 | 11,50 USD | 7 | wschód | Erik | 16.05.2016 r. |
| 8 | Diabelski młyn | W-24 | 20,50 USD | 11 | południe | Sheldon | 30.04.2016 r. |
| 9 | Silnik | ENG-0161 | 330 USD | 2 | północ | Jessie | 02.07.2016 r. |
| 10 | Drzwi | D-01Y | 29 USD | 6 | zachód | Armando | 13.03.2016 |
| 11 | Rama | FR-0B1 | 34 USD | 9 | południe | Yuliana | 27.02.2016 r. |
| 12 | Panel | P-102 | 3 USD | 15 | zachód | Carmen | 18.04.2016 r. |
| 13 | Panel | P-105 | 8,25 USD | 13 | zachód | Jessie | 20.06.2016 r. |
| 14 | Silnik | ENG-0211 | 283 PLN | 1 | północ | Amir | 21.06.2016 r. |
| 15 | Drzwi | D-01X | 15 zł | 2 | zachód | Armando | 3.07.2016 r. |
| 16 | Rama | FR-0B1 | 34 USD | 6 | południe | Carmen | 15.07.2016 r. |
| 17 | Diabelski młyn | W-25 | 20,00 USD | 8 | południe | Hannah | 02.05.2016 r. |
| 18 | Diabelski młyn | W-11 | 29 USD | 13 | wschód | Erik | 19.05.2016 r. |
| 19 | Drzwi | D-05 | 17,70 USD | 7 | zachód | Beth | 28.06.2016 r. |
| 20 | Rama | FR-0B1 | 34 USD | 8 | północ | Sheldon | 30.03.2016 r. |
Za pomocą tabeli przestawnej możesz utworzyć raport pokazujący, ile sztuk każdego modelu sprzedano w poszczególnych regionach:

Kod źródłowy użyty do wygenerowania tej tabeli przestawnej znajdziesz w sekcji Przykład poniżej.
Po umieszczeniu tabeli przestawnej w arkuszu kalkulacyjnym użytkownicy mogą interaktywnie zmieniać strukturę i szczegóły podsumowania za pomocą interfejsu Arkuszy.
Praca z tabelami przestawnymi
Definicja tabeli przestawnej jest powiązana z jedną komórką w arkuszu. Chociaż w wyświetlonej formie zajmuje wiele komórek zarówno w pionie, jak i w poziomie, programowo znajduje się we współrzędnych jednej komórki. Ta komórka staje się lewym górnym rogiem renderowanej tabeli przestawnej, a jej zakres w poziomie i pionie jest określony przez jej definicję.
Dodawanie tabeli przestawnej
Aby dodać tabelę przestawną, użyj metody batchUpdate i prześlij żądanie updateCells. Za pomocą tego żądania możesz podać definicję PivotTable jako zawartość komórki, jak pokazano poniżej:
{
"updateCells": {
"rows": {
"values": [
{
"pivotTable": "MyPivotTable"
}
],
"start": {
"sheetId": "sheetId",
"rowIndex": 0,
"columnIndex": 0
},
"fields": "pivotTable"
}
}
}
Spowoduje to umieszczenie tabeli przestawnej opisanej przez MyPivotTable w określonym arkuszu, a jej lewy górny róg znajdzie się w komórce A1. (Wysokość i szerokość tabeli przestawnej są dynamiczne. Określasz tylko punkt początkowy).
Typ PivotTable umożliwia określenie:
- Zakres danych źródłowych
- Co najmniej jedno pole, którego dane będą tworzyć wiersze tabeli przestawnej.
- Co najmniej jedno pole, którego dane będą tworzyć kolumny tabeli przestawnej
- Kryteria filtrowania i agregacji
- Układ tabeli przestawnej
Modyfikowanie i usuwanie tabel przestawnych
Nie ma wyraźnych próśb o zmodyfikowanie lub usunięcie tabeli przestawnej. Zamiast tego użyj żądania updateCells z inną zawartością komórek:
- Aby zmodyfikować tabelę przestawną, utwórz zmodyfikowaną definicję PivotTable i zaktualizuj komórkę, używając jej, podobnie jak w przypadku dodawania nowej tabeli przestawnej.
- Aby usunąć tabelę przestawną, zaktualizuj komórkę pustymi wartościami. Przykład znajdziesz w sekcji Usuwanie tabeli przestawnej.
Przypadki użycia
Tabele przestawne mają wiele zastosowań w różnych obszarach, m.in. w analizie statystycznej, aplikacjach ERP i raportowaniu finansowym. Klasyczne zastosowania tabeli przestawnej obejmują m.in.:
- Łączna sprzedaż według regionu i kwartału
- Średnie wynagrodzenie według stanowiska i lokalizacji
- Liczba incydentów według usługi i pory dnia
Liczba potencjalnych zastosowań tabel przestawnych jest ogromna, a możliwość generowania ich programowo jest bardzo przydatna. Możesz generować tabele przestawne, które umożliwiają interaktywne eksplorowanie danych, ale są dostosowane do konkretnych okoliczności, np.:
- Sprawdzanie danych o incydentach z ostatnich 24 godzin
- wyświetlać i analizować dane zbiorcze odpowiadające wybranemu kontu;
- Sprawdzanie danych o sprzedaży na obszarach należących do bieżącego użytkownika
Przykład
W tym przykładzie utworzymy tabelę przestawną na podstawie zbioru danych, aby wygenerować raport „numer modelu według regionu” pokazany we wstępie na tej stronie. Dodatkowe przykłady znajdziesz na stronie przykładowej tabeli przestawnej.