Class Filter

Mit Sammlungen den Überblick behalten Sie können Inhalte basierend auf Ihren Einstellungen speichern und kategorisieren.
Filter

Verwenden Sie diese Klasse, um vorhandene Filter für Grid Tabellenblätter, den Standardtyp des Tabellenblatts, zu ändern. Rasterblätter sind normale Tabellenblätter mit Daten, die nicht mit einer Datenbank verbunden sind.

Wenn auf dem 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 Filter des Rastertabellenblatts zugreifen.

Übliche Anwendungsbereiche

Filter entfernen

Im Beispiel unten wird der Filter auf das aktive Tabellenblatt angewendet und entfernt.
let ss = SpreadsheetApp.getActiveSheet();
let filter = ss.getFilter();
// Removes the filter from the active sheet.
filter.remove();

Bereich abrufen, für den der Filter gilt

Im folgenden Beispiel wird der Filter für das aktive Tabellenblatt abgerufen. Anschließend wird mit der Methode getRange() aus dieser Klasse der Bereich protokolliert, 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

MethodeRückgabetypKurzbeschreibung
getColumnFilterCriteria(columnPosition)FilterCriteriaRuft die Filterkriterien für die angegebene Spalte oder null ab, wenn auf die Spalte keine Filterkriterien angewendet wurden.
getRange()RangeRuft den Bereich ab, für den dieser Filter gilt.
remove()voidEntfernt diesen Filter.
removeColumnFilterCriteria(columnPosition)FilterEntfernt die Filterkriterien aus der angegebenen Spalte.
setColumnFilterCriteria(columnPosition, filterCriteria)FilterLegt die Filterkriterien für die angegebene Spalte fest.
sort(columnPosition, ascending)FilterSortiert den gefilterten Bereich nach der angegebenen Spalte, mit Ausnahme der ersten Zeile (Headerzeile) im Bereich, auf den dieser Filter angewendet wird.

Detaillierte Dokumentation

getColumnFilterCriteria(columnPosition)

Ruft die Filterkriterien für die angegebene Spalte oder null ab, wenn auf die Spalte keine Filterkriterien angewendet wurden.

Wenn Sie weitere Informationen zu den Filterkriterien erhalten möchten, verketten Sie diese Methode mit Methoden aus der Klasse FilterCriteria.

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

NameTypBeschreibung
columnPositionIntegerDie 1-indexierte Position der Spalte. Der Index der Spalte „B“ ist beispielsweise 2.

Zurücksenden

FilterCriteria: Die Filterkriterien.

Autorisierung

Für Skripts, die diese Methode verwenden, ist eine Autorisierung in mindestens einem der folgenden Bereiche erforderlich:

  • 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());

Zurücksenden

Range: Der Bereich des Filters. Um den Bereich in A1-Notation zu erhalten, verketten Sie diese Methode mit Range.getA1Notation().

Autorisierung

Für Skripts, die diese Methode verwenden, ist eine Autorisierung in mindestens einem der folgenden Bereiche erforderlich:

  • 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

Für Skripts, die diese Methode verwenden, ist eine Autorisierung in mindestens einem der folgenden Bereiche erforderlich:

  • 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

NameTypBeschreibung
columnPositionIntegerDie 1-indexierte Position der Spalte. Der Index der Spalte „B“ ist beispielsweise 2.

Zurücksenden

Filter: Der Filter zum Verketten.

Autorisierung

Für Skripts, die diese Methode verwenden, ist eine Autorisierung in mindestens einem der folgenden Bereiche erforderlich:

  • 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 mit SpreadsheetApp.newFilterCriteria() das Tool für die Filterkriterien. Fügen Sie dann dem Builder mithilfe der Klasse FilterCriteriaBuilder Kriterien hinzu. Nachdem Sie die Kriterien erstellt haben, legen Sie sie als Parameter filterCriteria 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

NameTypBeschreibung
columnPositionIntegerDie 1-indexierte Position der Spalte. Der Index der Spalte „B“ ist beispielsweise 2.
filterCriteriaFilterCriteriaDie festzulegenden Filterkriterien. Wenn Sie die Kriterien auf null setzen, werden Filterkriterien aus der angegebenen Spalte entfernt. Sie können aber auch removeColumnFilterCriteria(columnPosition) verwenden.

Zurücksenden

Filter: Der Filter zum Verketten.

Autorisierung

Für Skripts, die diese Methode verwenden, ist eine Autorisierung in mindestens einem der folgenden Bereiche erforderlich:

  • 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 (Headerzeile) im Bereich, auf den dieser Filter angewendet wird.

// 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

NameTypBeschreibung
columnPositionIntegerDie 1-indexierte Position der Spalte. Der Index der Spalte „B“ ist beispielsweise 2.
ascendingBooleanBei true wird der gefilterte Bereich in aufsteigender Reihenfolge sortiert. Bei false wird der gefilterte Bereich in absteigender Reihenfolge sortiert.

Zurücksenden

Filter: Der Filter zum Verketten.

Autorisierung

Für Skripts, die diese Methode verwenden, ist eine Autorisierung in mindestens einem der folgenden Bereiche erforderlich:

  • https://www.googleapis.com/auth/spreadsheets.currentonly
  • https://www.googleapis.com/auth/spreadsheets