Class FilterCriteria

Filterkriterien

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

Übliche Anwendungsbereiche

Kriterien kopieren

Im folgenden Beispiel wird der Filter abgerufen, der für den Bereich A1:C20 gilt, die Kriterien auf Spalte C angewendet und die Kriterien 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);

Werte werden durch den Filter ausgeblendet

Im folgenden Beispiel wird der Filter angewendet, der für den angegebenen Bereich gilt, und es werden die Werte aus Spalte B protokolliert, die der Filter ausgeblendet hat.
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 diese Filterkriterien 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 von Argumenten für boolesche Kriterien zurück.
getHiddenValues()String[]Gibt die Werte zurück, die mit dem Filter ausgeblendet werden.
getVisibleBackgroundColor()ColorGibt die Hintergrundfarbe zurück, die als Filterkriterium verwendet wird.
getVisibleForegroundColor()ColorGibt die Vordergrundfarbe zurück, die als Filterkriterium verwendet wird.
getVisibleValues()String[]Gibt die Werte zurück, die im Filter der Pivot-Tabelle angezeigt werden.

Detaillierte Dokumentation

copy()

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

Sie können diese Methode mit jedem beliebigen Filtertyp 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);

Zurücksenden

FilterCriteriaBuilder: Ein Filterkriterien-Builder, das auf diesen Filterkriterien basiert.


getCriteriaType()

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

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 jede Art von Filter verwenden. Wenn die Filterkriterien keine boolesche Bedingung sind, 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);

Zurücksenden

BooleanCriteria: Der Typ der booleschen Kriterien oder null, wenn die Kriterien keine boolesche Bedingung sind.


getCriteriaValues()

Gibt ein Array von 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.

  • Rufen Sie den booleschen Kriterientyp mit getCriteriaType() ab.
  • Wie Sie Filterkriterien erstellen oder ändern, erfahren Sie unter FilterCriteriaBuilder.withCriteria(criteria, args).

    Sie können diese Methode für jede Art von Filter 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);

    Zurücksenden

    Object[]: Ein Array von Argumenten, die dem booleschen Kriterientyp 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 mit dem Filter ausgeblendet werden.

Verwenden Sie dieses Kriterium mit Filtern für Grid Tabellenblätter, den 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);

Zurücksenden

String[]: Ein Array von Werten, die der Filter ausgeblendet.


getVisibleBackgroundColor()

Gibt die Hintergrundfarbe zurück, die als Filterkriterium verwendet wird. Zellen mit dieser Hintergrundfarbe sind weiterhin sichtbar.

Verwenden Sie dieses Kriterium mit Filtern für Grid Tabellenblätter, den 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);

Zurücksenden

Color: Die als Filterkriterium verwendete Hintergrundfarbe.


getVisibleForegroundColor()

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

Verwenden Sie dieses Kriterium mit Filtern für Grid Tabellenblätter, den 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);

Zurücksenden

Color: Die Vordergrundfarbe, die als Filterkriterium verwendet wird.


getVisibleValues()

Gibt die Werte zurück, die im Filter der Pivot-Tabelle angezeigt werden.

Dieses Kriterium gilt nur für Filter in 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);

Zurücksenden

String[]: Ein Array von Werten, die der Filter der Pivot-Tabelle anzeigt.