Verwenden Sie diese Klasse, um vorhandene Filter in Grid
-Tabellen, dem Standardtyp von Tabellenblättern, zu ändern. Rasterblätter sind normale Tabellenblätter mit Daten, die nicht mit einer Datenbank verbunden sind.
Wenn im Tabellenblatt noch kein Filter vorhanden ist, erstellen Sie ihn mit Range.createFilter()
.
Wenn Sie diese Klasse verwenden möchten, müssen Sie zuerst mit Range.getFilter()
oder Sheet.getFilter()
auf den Rastertabellenfilter zugreifen.
Übliche Anwendungsbereiche
Filter entfernen
Im folgenden Beispiel wird der Filter für das aktive Tabellenblatt abgerufen und entfernt.let ss = SpreadsheetApp.getActiveSheet(); let filter = ss.getFilter(); // Removes the filter from the active sheet. filter.remove();
Bereich abrufen, auf den der Filter angewendet wird
Im folgenden Beispiel wird der Filter für das aktive Tabellenblatt abgerufen. Anschließend wird die MethodegetRange()
aus dieser Klasse verwendet, um den Bereich zu protokollieren, auf den der Filter angewendet wird.
let ss = SpreadsheetApp.getActiveSheet(); // Gets the existing filter on the active sheet. let filter = ss.getFilter(); // Logs the range that the filter applies to in A1 notation. console.log(filter.getRange().getA1Notation());
Methoden
Methode | Rückgabetyp | Kurzbeschreibung |
---|---|---|
getColumnFilterCriteria(columnPosition) | FilterCriteria | Ruft die Filterkriterien der angegebenen Spalte oder null ab, wenn auf die Spalte keine Filterkriterien angewendet werden. |
getRange() | Range | Ruft den Bereich ab, für den dieser Filter gilt. |
remove() | void | Entfernt diesen Filter. |
removeColumnFilterCriteria(columnPosition) | Filter | Entfernt die Filterkriterien aus der angegebenen Spalte. |
setColumnFilterCriteria(columnPosition, filterCriteria) | Filter | Legt die Filterkriterien für die angegebene Spalte fest. |
sort(columnPosition, ascending) | Filter | Sortiert den gefilterten Bereich nach der angegebenen Spalte, mit Ausnahme der ersten Zeile (Kopfzeile) in dem Bereich, für den dieser Filter gilt. |
Detaillierte Dokumentation
getColumnFilterCriteria(columnPosition)
Ruft die Filterkriterien der angegebenen Spalte oder null
ab, wenn auf die Spalte keine Filterkriterien angewendet werden.
Verketten Sie diese Methode mit Methoden aus der Klasse FilterCriteria
, um weitere Details zu den Filterkriterien zu erhalten.
let ss = SpreadsheetApp.getActiveSheet(); let filter = ss.getFilter(); // Gets the filter criteria applied to column B of the active sheet // and logs the hidden values. let filterCriteria = filter.getColumnFilterCriteria(2).getHiddenValues(); console.log(filterCriteria);
Parameter
Name | Typ | Beschreibung |
---|---|---|
columnPosition | Integer | Die 1-indexierte Position der Spalte. Beispiel: Der Index der Spalte B ist 2. |
Return
FilterCriteria
: Die Filterkriterien.
Autorisierung
Skripts, die diese Methode verwenden, erfordern eine Autorisierung mit einem oder mehreren der folgenden Bereiche:
-
https://www.googleapis.com/auth/spreadsheets.currentonly
-
https://www.googleapis.com/auth/spreadsheets
getRange()
Ruft den Bereich ab, für den dieser Filter gilt.
// Gets the existing filter on the active sheet. let ss = SpreadsheetApp.getActiveSheet(); let filter = ss.getFilter(); // Logs the range that the filter applies to in A1 notation. console.log(filter.getRange().getA1Notation());
Return
Range
: Der Bereich des Filters. Verketten Sie diese Methode mit Range.getA1Notation()
, um den Bereich in der A1-Notation zu erhalten.
Autorisierung
Skripts, die diese Methode verwenden, erfordern eine Autorisierung mit einem oder mehreren der folgenden Bereiche:
-
https://www.googleapis.com/auth/spreadsheets.currentonly
-
https://www.googleapis.com/auth/spreadsheets
remove()
Entfernt diesen Filter.
// Removes the filter from the active sheet. let ss = SpreadsheetApp.getActiveSheet(); let filter = ss.getFilter(); filter.remove();
Autorisierung
Skripts, die diese Methode verwenden, erfordern eine Autorisierung mit einem oder mehreren der folgenden Bereiche:
-
https://www.googleapis.com/auth/spreadsheets.currentonly
-
https://www.googleapis.com/auth/spreadsheets
removeColumnFilterCriteria(columnPosition)
Entfernt die Filterkriterien aus der angegebenen Spalte.
// Removes the filter criteria from column B. let ss = SpreadsheetApp.getActiveSheet(); let filter = ss.getFilter(); filter.removeColumnFilterCriteria(2);
Parameter
Name | Typ | Beschreibung |
---|---|---|
columnPosition | Integer | Die 1-indexierte Position der Spalte. Beispiel: Der Index der Spalte B ist 2. |
Return
Filter
: Der Filter für Verkettungen.
Autorisierung
Skripts, die diese Methode verwenden, erfordern eine Autorisierung mit einem oder mehreren der folgenden Bereiche:
-
https://www.googleapis.com/auth/spreadsheets.currentonly
-
https://www.googleapis.com/auth/spreadsheets
setColumnFilterCriteria(columnPosition, filterCriteria)
Legt die Filterkriterien für die angegebene Spalte fest. Erstellen Sie zuerst den Builder für Filterkriterien mit SpreadsheetApp.newFilterCriteria()
. Fügen Sie dem Builder dann mithilfe der Klasse FilterCriteriaBuilder
Kriterien hinzu. Nachdem Sie die Kriterien erstellt haben, legen Sie sie als filterCriteria
-Parameter für diese Methode fest.
let ss = SpreadsheetApp.getActiveSheet(); let filter = ss.getFilter(); // Builds the filter criteria to use as a parameter for setColumnFilterCriteria. const criteria = SpreadsheetApp.newFilterCriteria() .setHiddenValues(["Hello", "World"]) .build(); // Sets the filter criteria for column C. filter.setColumnFilterCriteria(3, criteria);
Parameter
Name | Typ | Beschreibung |
---|---|---|
columnPosition | Integer | Die 1-indexierte Position der Spalte. Beispiel: Der Index der Spalte B ist 2. |
filterCriteria | FilterCriteria | Die festzulegenden Filterkriterien. Wenn Sie für das Kriterium null festlegen, werden die Filterkriterien aus der angegebenen Spalte entfernt. Sie können aber auch removeColumnFilterCriteria(columnPosition) verwenden. |
Return
Filter
: Der Filter für Verkettungen.
Autorisierung
Skripts, die diese Methode verwenden, erfordern eine Autorisierung mit einem oder mehreren der folgenden Bereiche:
-
https://www.googleapis.com/auth/spreadsheets.currentonly
-
https://www.googleapis.com/auth/spreadsheets
sort(columnPosition, ascending)
Sortiert den gefilterten Bereich nach der angegebenen Spalte, mit Ausnahme der ersten Zeile (Kopfzeile) in dem Bereich, für den dieser Filter gilt.
// Gets the existing filter and sorts it by column B in ascending order. let ss = SpreadsheetApp.getActiveSheet(); let filter = ss.getFilter(); filter.sort(2, true);
Parameter
Name | Typ | Beschreibung |
---|---|---|
columnPosition | Integer | Die 1-indexierte Position der Spalte. Beispiel: Der Index der Spalte B ist 2. |
ascending | Boolean | Bei true wird der gefilterte Bereich in aufsteigender Reihenfolge sortiert. Bei false wird der gefilterte Bereich in absteigender Reihenfolge sortiert. |
Return
Filter
: Der Filter für Verkettungen.
Autorisierung
Skripts, die diese Methode verwenden, erfordern eine Autorisierung mit einem oder mehreren der folgenden Bereiche:
-
https://www.googleapis.com/auth/spreadsheets.currentonly
-
https://www.googleapis.com/auth/spreadsheets