Class FilterCriteria

FilterCriteria

Verwenden Sie diese Klasse, um Informationen zu vorhandenen Filtern abzurufen oder die Kriterien zu kopieren.

Übliche Anwendungsbereiche

Kriterien kopieren

Im folgenden Beispiel wird der Filter für den Bereich A1:C20 abgerufen, die Kriterien für Spalte C werden abgerufen und die Kriterien werden in Spalte B kopiert.
let ss = SpreadsheetApp.getActiveSheet();
let range = ss.getRange("A1:C20");
// Copies the filter criteria applied to column C.
let filter = range.getFilter();
let criteria = filter.getColumnFilterCriteria(3).copy().build();
// Applies the copied criteria to column B. The copied criteria overwrites any existing
// criteria on column B.
filter.setColumnFilterCriteria(2, criteria);

Vom Filter ausgeblendete Werte abrufen

Im folgenden Beispiel wird der Filter für den angegebenen Bereich abgerufen und die Werte aus Spalte B protokolliert, die durch den Filter ausgeblendet wird.
let ss = SpreadsheetApp.getActiveSheet();
let range = ss.getRange("A1:C20");
let filter = range.getFilter();
// Gets the filter criteria applied to column B, then gets the hidden values.
let filterCriteria = filter.getColumnFilterCriteria(2).getHiddenValues();
// Logs the hidden values.
console.log(filterCriteria);

Methoden

MethodeRückgabetypKurzbeschreibung
copy()FilterCriteriaBuilderKopiert dieses Filterkriterium und erstellt einen Kriterien-Builder, den Sie auf einen anderen Filter anwenden können.
getCriteriaType()BooleanCriteriaGibt den booleschen Typ des Kriteriums zurück, z. B. CELL_EMPTY.
getCriteriaValues()Object[]Gibt ein Array mit Argumenten für boolesche Kriterien zurück.
getHiddenValues()String[]Gibt die Werte zurück, die durch den Filter ausgeblendet werden.
getVisibleBackgroundColor()ColorGibt die als Filterkriterium verwendete Hintergrundfarbe zurück.
getVisibleForegroundColor()ColorGibt die Vordergrundfarbe zurück, die als Filterkriterium verwendet wurde
getVisibleValues()String[]Gibt die Werte zurück, die der Filter für Pivot-Tabellen anzeigt.

Detaillierte Dokumentation

copy()

Kopiert dieses Filterkriterium und erstellt einen Kriterien-Builder, den Sie auf einen anderen Filter anwenden können.

Sie können diese Methode mit allen Arten von Filtern verwenden. Wenn Sie einen Tabellenblattfilter verwenden, können Sie die Kriterien in eine andere Spalte kopieren.

let ss = SpreadsheetApp.getActiveSheet();
let filter = ss.getFilter();
// Makes a copy of the filter criteria applied to column C.
let criteria = filter.getColumnFilterCriteria(3).copy().build();
// Applies the copied criteria to column B. The copied criteria overwrites any existing
// criteria on column B.
filter.setColumnFilterCriteria(2, criteria);

Return

FilterCriteriaBuilder: Ein Builder für Filterkriterien, der auf diesem Filterkriterium basiert.


getCriteriaType()

Gibt den booleschen Typ des Kriteriums zurück, z. B. CELL_EMPTY. Weitere Informationen zu den Arten boolescher Kriterien finden Sie in der BooleanCriteria-Enum.

Diese Methode wird häufig verwendet, um einem Filter boolesche Bedingungskriterien hinzuzufügen, ohne vorhandene Kriterien zu ersetzen.

Sie können diese Methode für alle Arten von Filtern verwenden. Wenn das Filterkriterium keine boolesche Bedingung ist, wird null zurückgegeben.

let ss = SpreadsheetApp.getActiveSheet();
// Gets the filter on the active sheet.
let filter = ss.getFilter();
// Gets the criteria type and returns a string representing the criteria type object.
let criteriaType = filter.getColumnFilterCriteria(2)
                         .getCriteriaType()
                         .toString();
// Logs the criteria type.
console.log(criteriaType);

Return

BooleanCriteria: Der Typ des booleschen Kriteriums oder null, wenn das Kriterium keine boolesche Bedingung ist.


getCriteriaValues()

Gibt ein Array mit Argumenten für boolesche Kriterien zurück. Einige boolesche Kriterientypen haben keine Argumente und geben ein leeres Array zurück, z. B. CELL_NOT_EMPTY.

Diese Methode wird häufig verwendet, um einem Filter boolesche Bedingungskriterien hinzuzufügen, ohne vorhandene Kriterien zu ersetzen.

  • Verwenden Sie getCriteriaType(), um den booleschen Kriterientyp abzurufen.
  • Informationen zum Erstellen oder Ändern von Filterkriterien mithilfe des Kriterientyps und der Kriterienwerte finden Sie unter FilterCriteriaBuilder.withCriteria(criteria, args).

    Sie können diese Methode für alle Arten von Filtern verwenden.

    let ss = SpreadsheetApp.getActiveSheet();
    let filter = ss.getFilter();
    // Gets the values of the boolean criteria and logs them. For example, if the boolean
    // condition is whenNumberGreaterThan(10), then the logged value is 10.
    let criteriaValues = filter.getColumnFilterCriteria(2).getCriteriaValues();
    console.log(criteriaValues);

    Return

    Object[]: Ein Array von Argumenten, die dem booleschen Kriteriumstyp entsprechen. Die Anzahl der Argumente und ihr Typ stimmen mit der entsprechenden when...()-Methode der FilterCriteriaBuilder-Klasse überein.


getHiddenValues()

Gibt die Werte zurück, die durch den Filter ausgeblendet werden.

Du kannst dieses Kriterium mit Filtern für Grid Tabellenblätter verwenden. Dies ist der Standardtyp von Tabellenblättern. Gibt null zurück, wenn Sie diese Methode für andere Filtertypen aufrufen.

let ss = SpreadsheetApp.getActiveSheet();
let range = ss.getRange("A1:C20");
let filter = range.getFilter();
// Gets the filter criteria applied to column B, then gets the hidden values.
let filterCriteria = filter.getColumnFilterCriteria(2).getHiddenValues();
// Logs the hidden values.
console.log(filterCriteria);

Return

String[]: Ein Array von Werten, die durch den Filter ausgeblendet werden.


getVisibleBackgroundColor()

Gibt die als Filterkriterium verwendete Hintergrundfarbe zurück. Zellen mit dieser Hintergrundfarbe bleiben sichtbar.

Du kannst dieses Kriterium mit Filtern für Grid Tabellenblätter verwenden. Dies ist der Standardtyp von Tabellenblättern. Gibt null zurück, wenn Sie diese Methode für andere Filtertypen aufrufen.

let ss = SpreadsheetApp.getActiveSheet();
let range = ss.getRange("A1:C20");
// Logs the background color that column B is filtered by as a hexadecimal string.
let filter = range.getFilter();
let color = filter.getColumnFilterCriteria(2)
                  .getVisibleBackgroundColor()
                  .asRgbColor()
                  .asHexString();
console.log(color);

Return

Color: Die Hintergrundfarbe, die als Filterkriterium verwendet wird.


getVisibleForegroundColor()

Gibt die Vordergrundfarbe zurück, die als Filterkriterium verwendet wurde Zellen mit dieser Vordergrundfarbe bleiben sichtbar.

Du kannst dieses Kriterium mit Filtern für Grid Tabellenblätter verwenden. Dies ist der Standardtyp von Tabellenblättern. Gibt null zurück, wenn Sie diese Methode für andere Filtertypen aufrufen.

let ss = SpreadsheetApp.getActiveSheet();
let range = ss.getRange("A1:C20");
// Logs the foreground color that column B is filtered by as a hexadecimal string.
let filter = range.getFilter();
let color = filter.getColumnFilterCriteria(2)
                  .getVisibleForegroundColor()
                  .asRgbColor()
                  .asHexString();
console.log(color);

Return

Color: Die Vordergrundfarbe, die als Filterkriterium verwendet wird.


getVisibleValues()

Gibt die Werte zurück, die der Filter für Pivot-Tabellen anzeigt.

Dieses Kriterium gilt nur für Filter für Pivot-Tabellen, die nicht mit einer Datenbank verbunden sind. Gibt ein leeres Array für andere Filtertypen zurück.

let ss = SpreadsheetApp.getActiveSheet();
// Gets the first pivot table on the sheet, then gets the visible values of its first filter.
pivotTable = ss.getPivotTables()[0];
pivotFilterValues = pivotTable.getFilters()[0].getFilterCriteria().getVisibleValues();
// Logs the visible values.
console.log(pivotFilterValues);

Return

String[]: Ein Array von Werten, das der Pivot-Tabellenfilter anzeigt.