Filtry umożliwiają sortowanie i filtrowanie danych wyświetlanych w arkuszu kalkulacyjnym. Filtry nie zmieniają wartości danych w arkuszu kalkulacyjnym. Możesz użyć filtrów, aby tymczasowo ukryć lub posortować informacje. Dane, które pasują do określonych kryteriów filtra, nie są wyświetlane, gdy filtr jest włączony. Dzięki widokom filtrów możesz też zapisywać różne filtry z nazwami i w dowolnym momencie przełączać się między nimi.
Oto kilka przykładowych zastosowań filtrów:
- sortować dane według konkretnej kolumny; Możesz na przykład posortować rekordy użytkowników według nazwiska.
- ukrywać dane, które spełniają określony warunek. Możesz na przykład ukryć wszystkie rekordy starsze niż 2 lata.
- ukrywać dane, które pasują do określonej wartości; Możesz na przykład ukryć wszystkie problemy ze stanem „zamknięty”.
Filtr podstawowy
BasicFilter
w arkuszu kalkulacyjnym to domyślny filtr, który jest stosowany za każdym razem, gdy ktoś wyświetla arkusz kalkulacyjny. Arkusz może mieć 1 filtr podstawowy na arkusz. Możesz wyłączyć podstawowy filtr, oczyszczając go. Spowoduje to usunięcie filtra i wszystkich jego ustawień z arkusza kalkulacyjnego.
Jeśli chcesz ponownie włączyć ten sam filtr, musisz ponownie ustawić kryteria.
Zarządzanie filtrem podstawowym
Aby ustawić lub wyczyścić podstawowy filtr, użyj metody spreadsheets.batchUpdate
z odpowiednim typem żądania:
- Aby ustawić podstawowy filtr, użyj metody
SetBasicFilterRequest
. - Aby wyczyścić podstawowy filtr, użyj metody
ClearBasicFilterRequest
.
Aby wyświetlić podstawowy filtr, użyj metody spreadsheets.get
i ustaw parametr adresu URL fields
na sheets/basicFilter
. Poniższy przykład koduspreadsheets.get
zawiera URL arkusza Google z maską pola:
GET https://sheets.googleapis.com/v4/spreadsheets/SPREADSHEET_ID?fields=sheets/basicFilter)
Widoki filtrów
FilterView
to filtr o nazwie, który możesz w każdej chwili włączać i wyłączać. Arkusz kalkulacyjny może mieć wiele widoków filtra, ale możesz zastosować tylko jeden naraz.
Oto kilka przykładowych zastosowań widoków filtrów:
- Podczas wyświetlania danych chcesz przełączać się między kilkoma różnymi filtrami.
- Nie masz uprawnień do edycji arkusza kalkulacyjnego, ale chcesz zastosować filtr. W takim przypadku możesz utworzyć tymczasowy widok filtra, który będzie widoczny tylko dla Ciebie.
Chcesz, aby każda osoba, której udostępnisz arkusz kalkulacyjny, widziała dane w inny sposób. Aby określić widok filtra, który chcesz zastosować, podaj
spreadsheetId
ifilterViewId
w adresie URL arkusza kalkulacyjnego. Aby to zrobić, użyj wartościfilterViewId
zwróconej w odpowiedzi podczas tworzenia widoku filtra.Poniższy przykładowy kod pokazuje adres URL Arkuszy Google z widokiem filtra:
https://docs.google.com/spreadsheets/d/SPREADSHEET_ID/edit#gid=0&fvid=FILTER_VIEW_ID
Zarządzanie widokami filtrów
Aby utworzyć, powielić, zmodyfikować lub usunąć widoki filtrów, użyj metody spreadsheets.batchUpdate
z odpowiednim typem żądania:
- Aby utworzyć widok filtra, użyj metody
AddFilterViewRequest
. - Aby utworzyć kopię widoku filtra, użyj metody
DuplicateFilterViewRequest
. - Aby zmodyfikować właściwości widoku filtra, użyj metody
UpdateFilterViewRequest
. - Aby usunąć widok filtra, użyj metody
DeleteFilterViewRequest
.
Aby wyświetlić listę wszystkich widoków z filtrami, użyj metody spreadsheets.get
i ustaw parametr adresu URL fields
na sheets/filterViews
. Poniższy przykład koduspreadsheets.get
zawiera URL arkusza Google z maską pola:
GET https://sheets.googleapis.com/v4/spreadsheets/SPREADSHEET_ID?fields=sheets/filterViews)
Reprezentacja filtra
Ten przykład kodu pokazuje reprezentację JSON obiektu FilterView
. Obiekt BasicFilter
jest taki sam, z tym że nie zawiera pól filterViewId
i title
oraz nie może używać zakresu nazwanego.
{
"filterViewId": number,
"title": string,
"range": {
object(GridRange)
},
"namedRangeId": string,
"sortSpecs": [
{
object(SortSpec)
}
],
"criteria": {
string: {
object(FilterCriteria)
},
...
}
}
Przykładowe dane
Pozostała część tego dokumentu odwołuje się do przykładowej tabeli 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 zł | 4 | zachód | Beth | 01.03.2016 |
3 | Drzwi | D-01X | 15 zł | 2 | południe | Amir | 15.03.2016 r. |
4 | Rama | FR-0B1 | 34,00 USD | 8 | wschód | Hannah | 12.03.2016 |
5 | Panel | P-034 | 18 PLN | 4 | północ | Devyn | 15.03.2016 r. |
6 | Panel | P-052 | 11,50 PLN | 7 | wschód | Erik | 16.05.2016 r. |
7 | Diabelski młyn | W-24 | 20,50 zł | 11 | południe | Sheldon | 30.04.2016 r. |
8 | Silnik | ENG-0161 | 330 PLN | 2 | północ | Jessie | 2.07.2016 |
Sortowanie specyfikacji
Filtr może mieć wiele specyfikacji sortowania. Te specyfikacje określają sposób sortowania danych i są stosowane w określonej kolejności. Atrybut SortSpec.dimensionIndex
określa indeks kolumny, do której ma zostać zastosowane sortowanie.
Poniższy przykładowy kod pokazuje specyfikację sortowania:
[
{
"dimensionIndex": 3,
"sortOrder": "ASCENDING"
},
{
"dimensionIndex": 6,
"sortOrder": "ASCENDING"
}
]
Po zastosowaniu do przykładowych danych o sprzedaży ta specyfikacja sortuje najpierw według kolumny „Ilość”, a potem, jeśli 2 wiersze mają taką samą ilość, według kolumny „Data dostawy”.
A | B | C | D | E | F | G | |
1 | Kategoria produktu | Numer modelu | Koszt | Ilość | Region | Pracownik działu sprzedaży | Data wysyłki |
2 | Drzwi | D-01X | 15 zł | 2 | południe | Amir | 15.03.2016 r. |
3 | Silnik | ENG-0161 | 330 PLN | 2 | północ | Jessie | 2.07.2016 |
4 | Diabelski młyn | W-24 | 20,50 zł | 4 | zachód | Beth | 01.03.2016 |
5 | Panel | P-034 | 18 PLN | 4 | północ | Devyn | 15.03.2016 r. |
6 | Panel | P-052 | 11,50 PLN | 7 | wschód | Erik | 16.05.2016 r. |
7 | Rama | FR-0B1 | 34,00 USD | 8 | wschód | Hannah | 12.03.2016 |
8 | Diabelski młyn | W-24 | 20,50 zł | 11 | południe | Sheldon | 30.04.2016 r. |
Kryteria filtra
Metoda FilterCriteria
określa, które dane arkusza kalkulacyjnego są wyświetlane lub ukryte w podstawowym filtrze lub widoku filtra. Każde kryterium zależy od wartości w konkretnej kolumnie. Kryteria filtrowania podajesz jako mapę, w której klucze to indeksy kolumn, a wartości to kryteria.
Aby wartości były wyświetlane, w przypadku kryteriów określonych za pomocą wartości logicznej condition
warunek musi być True
. Warunek nie zastępuje hiddenValues
. Jeśli wartość jest wymieniona w sekcji hiddenValues
, wszystkie pasujące do niej wartości są nadal ukryte.
Poniższy przykładowy kod pokazuje mapę kryteriów filtra:
{
0: {
'hiddenValues': ['Panel']
},
6: {
'condition': {
'type': 'DATE_BEFORE',
'values': {
'userEnteredValue': '4/30/2016'
}
}
}
}
Po zastosowaniu tego kryterium do przykładowych danych o sprzedaży zostaną wyświetlone tylko wiersze, w których kolumna „Kategoria produktu” nie zawiera wartości „Panel”, a kolumna „Data dostawy” zawiera datę wcześniejszą niż 30 kwietnia 2016 r.
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 zł | 4 | zachód | Beth | 01.03.2016 |
3 | Drzwi | D-01X | 15 zł | 2 | południe | Amir | 15.03.2016 r. |
4 | Rama | FR-0B1 | 34,00 USD | 8 | wschód | Hannah | 12.03.2016 |
Przykład
Poniższy przykładowy kod pokazuje, jak utworzyć widok filtra, zduplikować go, a następnie zaktualizować zduplikowaną wersję za pomocą przykładowych danych o sprzedaży.