Class Filter

Filter

Mit dieser Klasse können Sie vorhandene Filter in Grid-Listen ändern, dem Standardlistentyp. Tabellenblätter mit Rastern sind normale Tabellenblätter mit Daten, die nicht mit einer Datenbank verbunden sind.

Wenn im Tabellenblatt noch kein Filter vorhanden ist, erstellen Sie einen mit Range.createFilter().

Wenn Sie diese Klasse verwenden möchten, müssen Sie zuerst mit Range.getFilter() oder Sheet.getFilter() auf den Filter für Tabellenraster zugreifen.

Übliche Anwendungsbereiche

Filter entfernen

Im folgenden Beispiel wird der Filter auf dem aktiven Tabellenblatt abgerufen und entfernt.
const ss = SpreadsheetApp.getActiveSheet();
const 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 auf dem aktiven Tabellenblatt abgerufen und dann mit der Methode getRange() dieser Klasse der Bereich protokolliert, auf den der Filter angewendet wird.
const ss = SpreadsheetApp.getActiveSheet();
// Gets the existing filter on the active sheet.
const filter = ss.getFilter();
// Logs the range that the filter applies to in A1 notation.
console.log(filter.getRange().getA1Notation());

Methoden

MethodeRückgabetypKurzbeschreibung
getColumnFilterCriteria(columnPosition)FilterCriteriaHier werden die Filterkriterien für die angegebene Spalte zurückgegeben. Wenn für die Spalte keine Filterkriterien angewendet wurden, wird null zurückgegeben.
getRange()RangeDer Bereich, auf den sich dieser Filter bezieht.
remove()voidDieser Filter wird entfernt.
removeColumnFilterCriteria(columnPosition)FilterEntfernt die Filterkriterien aus der angegebenen Spalte.
setColumnFilterCriteria(columnPosition, filterCriteria)FilterLegt die Filterkriterien für die angegebene Spalte fest.
sort(columnPosition, ascending)FilterDer gefilterte Bereich wird nach der angegebenen Spalte sortiert, wobei die erste Zeile (die Kopfzeile) im Bereich, auf den sich der Filter bezieht, ausgeschlossen wird.

Detaillierte Dokumentation

getColumnFilterCriteria(columnPosition)

Hier werden die Filterkriterien für die angegebene Spalte zurückgegeben. Wenn für die Spalte keine Filterkriterien angewendet wurden, wird null zurückgegeben.

Wenn Sie weitere Informationen zu den Filterkriterien benötigen, verketten Sie diese Methode mit Methoden aus der Klasse FilterCriteria.

const ss = SpreadsheetApp.getActiveSheet();
const filter = ss.getFilter();
// Gets the filter criteria applied to column B of the active sheet
// and logs the hidden values.
const filterCriteria = filter.getColumnFilterCriteria(2).getHiddenValues();
console.log(filterCriteria);

Parameter

NameTypBeschreibung
columnPositionIntegerDie Position der Spalte, beginnend mit 1. Spalte B hat beispielsweise den Index 2.

Rückflug

FilterCriteria: Die Filterkriterien.

Autorisierung

Scripts, die diese Methode verwenden, erfordern eine Autorisierung für einen oder mehrere der folgenden Bereiche:

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

getRange()

Der Bereich, auf den sich dieser Filter bezieht.

// Gets the existing filter on the active sheet.
const ss = SpreadsheetApp.getActiveSheet();
const filter = ss.getFilter();
// Logs the range that the filter applies to in A1 notation.
console.log(filter.getRange().getA1Notation());

Rückflug

Range: Der Bereich des Filters. Wenn Sie den Bereich in A1-Notation abrufen möchten, verketten Sie diese Methode mit Range.getA1Notation().

Autorisierung

Scripts, die diese Methode verwenden, erfordern eine Autorisierung für einen oder mehrere der folgenden Bereiche:

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

remove()

Dieser Filter wird entfernt.

// Removes the filter from the active sheet.
const ss = SpreadsheetApp.getActiveSheet();
const filter = ss.getFilter();
filter.remove();

Autorisierung

Scripts, die diese Methode verwenden, erfordern eine Autorisierung für einen oder mehrere 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.
const ss = SpreadsheetApp.getActiveSheet();
const filter = ss.getFilter();
filter.removeColumnFilterCriteria(2);

Parameter

NameTypBeschreibung
columnPositionIntegerDie Position der Spalte, beginnend mit 1. Spalte B hat beispielsweise den Index 2.

Rückflug

Filter: Der Filter zur Verkettung.

Autorisierung

Scripts, die diese Methode verwenden, erfordern eine Autorisierung für einen oder mehrere 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 Filterkriterium-Builder 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 Parameter filterCriteria für diese Methode fest.

const ss = SpreadsheetApp.getActiveSheet();
const 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 Position der Spalte, beginnend mit 1. Spalte B hat beispielsweise den Index 2.
filterCriteriaFilterCriteriaDie Filterkriterien, die festgelegt werden sollen. Wenn Sie die Kriterien auf null festlegen, werden die Filterkriterien aus der angegebenen Spalte entfernt. Sie können aber auch removeColumnFilterCriteria(columnPosition) verwenden.

Rückflug

Filter: Der Filter zur Verkettung.

Autorisierung

Scripts, die diese Methode verwenden, erfordern eine Autorisierung für einen oder mehrere der folgenden Bereiche:

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

sort(columnPosition, ascending)

Der gefilterte Bereich wird nach der angegebenen Spalte sortiert, wobei die erste Zeile (die Kopfzeile) im Bereich, auf den sich der Filter bezieht, ausgeschlossen wird.

// Gets the existing filter and sorts it by column B in ascending order.
const ss = SpreadsheetApp.getActiveSheet();
const filter = ss.getFilter();
filter.sort(2, true);

Parameter

NameTypBeschreibung
columnPositionIntegerDie Position der Spalte, beginnend mit 1. Spalte B hat beispielsweise den Index 2.
ascendingBooleanWenn true ausgewählt ist, wird der gefilterte Bereich in aufsteigender Reihenfolge sortiert. Bei false wird er in absteigender Reihenfolge sortiert.

Rückflug

Filter: Der Filter zur Verkettung.

Autorisierung

Scripts, die diese Methode verwenden, erfordern eine Autorisierung für einen oder mehrere der folgenden Bereiche:

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