Mit Filtern können Sie die Daten sortieren und filtern, die beim Aufrufen einer Tabelle angezeigt werden. Durch Filter werden die Datenwerte in Ihrer Tabelle nicht geändert. Mit Filtern können Sie Informationen vorübergehend ausblenden oder sortieren. Daten, die den angegebenen Filterkriterien entsprechen, werden nicht angezeigt, solange der Filter aktiv ist. Mit Filteransichten können Sie auch verschiedene benannte Filter speichern und jederzeit zwischen ihnen wechseln.
Hier einige Beispiele für Anwendungsfälle für Filter:
- Daten nach einer bestimmten Spalte sortieren Sie können Nutzerdatensätze beispielsweise nach Nachname sortieren.
- Daten ausblenden, die eine bestimmte Bedingung erfüllen. Sie können beispielsweise alle Einträge ausblenden, die älter als 2 Jahre sind.
- Daten ausblenden, die einem bestimmten Wert entsprechen. Sie können beispielsweise alle Probleme mit dem Status „geschlossen“ ausblenden.
Einfacher Filter
Die BasicFilter
für eine Tabelle ist der Standardfilter, der angewendet wird, wenn jemand die Tabelle aufruft. Eine Tabelle kann einen einfachen Filter pro Tabellenblatt enthalten. Sie können den einfachen Filter deaktivieren, indem Sie ihn entfernen. Dadurch werden der Filter und alle zugehörigen Einstellungen aus der Tabelle entfernt.
Wenn Sie denselben Filter wieder aktivieren möchten, müssen Sie die Kriterien noch einmal festlegen.
Einfachen Filter verwalten
Verwenden Sie die Methode spreadsheets.batchUpdate
mit dem entsprechenden Anfragetyp, um den einfachen Filter festzulegen oder zu entfernen:
- Verwenden Sie die Methode
SetBasicFilterRequest
, um den einfachen Filter festzulegen. - Wenn Sie den einfachen Filter entfernen möchten, verwenden Sie die Methode
ClearBasicFilterRequest
.
Wenn Sie den einfachen Filter auflisten möchten, verwenden Sie die Methode spreadsheets.get
und setzen Sie den URL-Parameter fields
auf sheets/basicFilter
. Das folgende spreadsheets.get
-Codebeispiel zeigt eine Google-Tabellen-URL mit einer Feldmaske:
GET https://sheets.googleapis.com/v4/spreadsheets/SPREADSHEET_ID?fields=sheets/basicFilter)
Filteransichten
Ein FilterView
ist ein benannter Filter, den Sie jederzeit aktivieren und deaktivieren können. Eine Tabelle kann mehrere Filteransichten haben, aber Sie können jeweils nur eine anwenden.
Hier einige Anwendungsbeispiele für Filteransichten:
- Sie haben mehrere verschiedene Filter, zwischen denen Sie beim Ansehen der Daten wechseln möchten.
- Sie haben keinen Bearbeitungszugriff auf eine Tabelle, möchten aber trotzdem einen Filter anwenden. In diesem Fall können Sie eine temporäre Filteransicht erstellen, die nur für Sie sichtbar ist.
Sie möchten, dass jede Person, mit der Sie Ihre Tabelle teilen, die Daten anders sieht. Sie können die anzuwendende Filteransicht angeben, indem Sie
spreadsheetId
undfilterViewId
in der Tabellen-URL angeben. Verwenden Sie dazu diefilterViewId
, die beim Erstellen der Filteransicht in der Antwort zurückgegeben wird.Das folgende Codebeispiel zeigt eine Google-Tabellen-URL mit einer Filteransicht:
https://docs.google.com/spreadsheets/d/SPREADSHEET_ID/edit#gid=0&fvid=FILTER_VIEW_ID
Filteransichten verwalten
Wenn Sie Filteransichten erstellen, duplizieren, ändern oder löschen möchten, verwenden Sie die Methode spreadsheets.batchUpdate
mit dem entsprechenden Anfragetyp:
- Verwenden Sie zum Erstellen einer Filteransicht die Methode
AddFilterViewRequest
. - Wenn Sie eine Kopie einer Filteransicht erstellen möchten, verwenden Sie die Methode
DuplicateFilterViewRequest
. - Wenn Sie die Attribute einer Filteransicht ändern möchten, verwenden Sie die Methode
UpdateFilterViewRequest
. - Wenn Sie eine Filteransicht löschen möchten, verwenden Sie die Methode
DeleteFilterViewRequest
.
Wenn Sie alle Ihre Filteransichten auflisten möchten, verwenden Sie die Methode spreadsheets.get
und legen Sie den URL-Parameter fields
auf sheets/filterViews
fest. Das folgende spreadsheets.get
-Codebeispiel zeigt eine Google-Tabellen-URL mit einer Feldmaske:
GET https://sheets.googleapis.com/v4/spreadsheets/SPREADSHEET_ID?fields=sheets/filterViews)
Filterdarstellung
Das folgende Codebeispiel zeigt die JSON-Darstellung eines FilterView
-Objekts. Das Objekt BasicFilter
ist dasselbe, nur dass die Felder filterViewId
und title
fehlen und kein benannter Bereich verwendet werden kann.
{
"filterViewId": number,
"title": string,
"range": {
object(GridRange)
},
"namedRangeId": string,
"sortSpecs": [
{
object(SortSpec)
}
],
"criteria": {
string: {
object(FilterCriteria)
},
...
}
}
Beispieldaten
Im Rest dieses Dokuments wird auf die folgende Beispielstabelle mit Verkaufsdaten verwiesen:
A | B | C | D | E | F | G | |
1 | Artikelkategorie | Modellnummer | Kosten | Menge | Region | Vertriebsmitarbeiter | Versanddatum |
2 | Wheel Riesenrad | W-24 | 20,50 $ | 4 | West | Beth | 01.03.2016 |
3 | Tür | D-01X | 15,00 $ | 2 | Süd | Amir | 15.03.2016 |
4 | Rahmen | FR-0B1 | 34 $ | 8 | Ost | Hannah | 12.03.2016 |
5 | Feld | P-034 | 6,00 $ | 4 | Norden | Devyn | 15.03.2016 |
6 | Feld | P-052 | 11,50 $ | 7 | Ost | Erik | 16.05.2016 |
7 | Wheel Riesenrad | W-24 | 20,50 $ | 11 | Süd | Sheldon | 30.04.2016 |
8 | Engine | ENG-0161 | 330,00 $ | 2 | Norden | Jessie | 02.07.2016 |
Sortierspezifikationen
Ein Filter kann mehrere Sortierspezifikationen haben. Diese Spezifikationen legen fest, wie die Daten sortiert werden, und werden in der angegebenen Reihenfolge angewendet. Das Attribut SortSpec.dimensionIndex
gibt den Spaltenindex an, auf den die Sortierung angewendet werden soll.
Das folgende Codebeispiel zeigt eine Sortierspezifikation:
[
{
"dimensionIndex": 3,
"sortOrder": "ASCENDING"
},
{
"dimensionIndex": 6,
"sortOrder": "ASCENDING"
}
]
Angewendet auf die Beispielverkaufsdaten, wird mit dieser Spezifikation zuerst nach „Menge“ und dann, wenn zwei Zeilen dieselbe Menge haben, nach „Versanddatum“ sortiert.
A | B | C | D | E | F | G | |
1 | Artikelkategorie | Modellnummer | Kosten | Menge | Region | Vertriebsmitarbeiter | Versanddatum |
2 | Tür | D-01X | 15,00 $ | 2 | Süd | Amir | 15.03.2016 |
3 | Engine | ENG-0161 | 330,00 $ | 2 | Norden | Jessie | 02.07.2016 |
4 | Wheel Riesenrad | W-24 | 20,50 $ | 4 | West | Beth | 01.03.2016 |
5 | Feld | P-034 | 6,00 $ | 4 | Norden | Devyn | 15.03.2016 |
6 | Feld | P-052 | 11,50 $ | 7 | Ost | Erik | 16.05.2016 |
7 | Rahmen | FR-0B1 | 34 $ | 8 | Ost | Hannah | 12.03.2016 |
8 | Wheel Riesenrad | W-24 | 20,50 $ | 11 | Süd | Sheldon | 30.04.2016 |
Filterkriterien
Mit der Methode FilterCriteria
wird festgelegt, welche Tabellendaten in einem einfachen Filter oder einer Filteransicht angezeigt oder ausgeblendet werden. Jedes Kriterium hängt von den Werten in einer bestimmten Spalte ab. Sie geben die Filterkriterien als Zuordnung an, wobei die Schlüssel die Spaltenindexe und die Werte die Kriterien sind.
Bei Kriterien, die mit einem booleschen condition
angegeben werden, muss die Bedingung True
sein, damit Werte angezeigt werden. Die Bedingung überschreibt hiddenValues
nicht. Wenn ein Wert unter hiddenValues
aufgeführt ist, werden alle Übereinstimmungen für einen Wert weiterhin ausgeblendet.
Das folgende Codebeispiel zeigt eine Karte mit Filterkriterien:
{
0: {
'hiddenValues': ['Panel']
},
6: {
'condition': {
'type': 'DATE_BEFORE',
'values': {
'userEnteredValue': '4/30/2016'
}
}
}
}
Angewendet auf die Beispieldaten zu Verkäufen werden mit diesem Kriterium nur Zeilen angezeigt, in denen die „Artikelkategorie“ nicht „Panel“ ist und das „Versanddatum“ vor dem 30. April 2016 liegt.
A | B | C | D | E | F | G | |
1 | Artikelkategorie | Modellnummer | Kosten | Menge | Region | Vertriebsmitarbeiter | Versanddatum |
2 | Wheel Riesenrad | W-24 | 20,50 $ | 4 | West | Beth | 01.03.2016 |
3 | Tür | D-01X | 15,00 $ | 2 | Süd | Amir | 15.03.2016 |
4 | Rahmen | FR-0B1 | 34 $ | 8 | Ost | Hannah | 12.03.2016 |
Beispiel
Im folgenden Codebeispiel wird gezeigt, wie Sie eine Filteransicht erstellen, sie duplizieren und dann die duplizierte Version mit den Beispieldaten zu Verkäufen oben aktualisieren.