Class FilterCriteria

FiltreÖlçütler

Mevcut filtrelerdeki ölçütler hakkında bilgi edinmek veya ölçütleri kopyalamak için bu sınıfı kullanın.

Yaygın kullanım alanları

Ölçütleri kopyalama

Aşağıdaki örnekte, A1:C20 aralığına uygulanan filtre alınır, C sütununa uygulanan ölçütler alınır ve ölçütler B sütununa kopyalanır.
const ss = SpreadsheetApp.getActiveSheet();
const range = ss.getRange('A1:C20');
// Copies the filter criteria applied to column C.
const filter = range.getFilter();
const 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);

Filtre tarafından gizlenen değerleri alma

Aşağıdaki örnek, belirli bir aralığa uygulanan filtreyi alır ve filtrenin gizlediği B sütunundaki değerleri günlüğe kaydeder.
const ss = SpreadsheetApp.getActiveSheet();
const range = ss.getRange('A1:C20');
const filter = range.getFilter();
// Gets the filter criteria applied to column B, then gets the hidden values.
const filterCriteria = filter.getColumnFilterCriteria(2).getHiddenValues();
// Logs the hidden values.
console.log(filterCriteria);

Yöntemler

YöntemDönüş türüKısa açıklama
copy()FilterCriteriaBuilderBu filtre ölçütlerini kopyalar ve başka bir filtreye uygulayabileceğiniz bir ölçüt oluşturucu oluşturur.
getCriteriaType()BooleanCriteria|nullÖlçütün Boole türünü (ör. CELL_EMPTY) döndürür.
getCriteriaValues()Object[]Boole ölçütleri için bir bağımsız değişken dizisi döndürür.
getHiddenValues()String[]Filtrenin gizlediği değerleri döndürür.
getVisibleBackgroundColor()Color|nullFiltre ölçütü olarak kullanılan arka plan rengini döndürür.
getVisibleForegroundColor()Color|nullFiltre ölçütü olarak kullanılan ön plan rengini döndürür.
getVisibleValues()String[]Pivot tablo filtresinin gösterdiği değerleri döndürür.

Ayrıntılı belgeler

copy()

Bu filtre ölçütlerini kopyalar ve başka bir filtreye uygulayabileceğiniz bir ölçüt oluşturucu oluşturur.

Bu yöntemi herhangi bir filtre türüyle kullanabilirsiniz. Sayfa filtresi kullanıyorsanız ölçütleri başka bir sütuna kopyalayabilirsiniz.

const ss = SpreadsheetApp.getActiveSheet();
const filter = ss.getFilter();
// Makes a copy of the filter criteria applied to column C.
const 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: Bu filtre ölçütlerine dayalı bir filtre ölçütü oluşturucu.


getCriteriaType()

Ölçütün Boole türünü (ör. CELL_EMPTY) döndürür. Boole ölçütü türleri hakkında bilgi edinmek için BooleanCriteria enum'ına bakın.

Kullanıcılar genellikle bu yöntemi, mevcut ölçütleri değiştirmeden bir filtreye Boole koşulu ölçütleri eklemek için kullanır.

Bu yöntemi herhangi bir filtre türü için kullanabilirsiniz. Filtre ölçütü bir Boole koşulu değilse null değerini döndürür.

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

Return

BooleanCriteria|null: Boole ölçütünün türü veya ölçüt Boole koşulu değilse null.


getCriteriaValues()

Boole ölçütleri için bir bağımsız değişken dizisi döndürür. Bazı Boole ölçütü türleri bağımsız değişken içermez ve boş bir dizi döndürür (ör. CELL_NOT_EMPTY).

Kullanıcılar genellikle bu yöntemi, mevcut ölçütleri değiştirmeden bir filtreye Boole koşulu ölçütleri eklemek için kullanır.

  • Boole ölçütü türünü almak için getCriteriaType() kullanın.
  • Filtre ölçütleri oluşturmak veya değiştirmek için ölçüt türünü ve ölçüt değerlerini kullanma hakkında bilgi edinmek için FilterCriteriaBuilder.withCriteria(criteria, args) başlıklı makaleyi inceleyin.

    Bu yöntemi herhangi bir filtre türü için kullanabilirsiniz.

    const ss = SpreadsheetApp.getActiveSheet();
    const 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.
    const criteriaValues = filter.getColumnFilterCriteria(2).getCriteriaValues();
    console.log(criteriaValues);

    Return

    Object[]: Boole ölçüt türüne uygun bir bağımsız değişken dizisi. Bağımsız değişkenlerin sayısı ve türü, when...() sınıfının ilgili FilterCriteriaBuilder yöntemiyle eşleşir.


getHiddenValues()

Filtrenin gizlediği değerleri döndürür.

Bu ölçütü, varsayılan sayfa türü olan Grid sayfalarındaki filtrelerle kullanın. Diğer filtre türleri için bu yöntemi çağırırsanız null değerini döndürür.

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

Return

String[]: Filtrenin gizlediği değerler dizisi.


getVisibleBackgroundColor()

Filtre ölçütü olarak kullanılan arka plan rengini döndürür. Bu arka plan rengine sahip hücreler görünür kalır.

Bu ölçütü, varsayılan sayfa türü olan Grid sayfalarındaki filtrelerle kullanın. Diğer filtre türleri için bu yöntemi çağırırsanız null değerini döndürür.

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

Return

Color|null: Filtre ölçütü olarak kullanılan arka plan rengi.


getVisibleForegroundColor()

Filtre ölçütü olarak kullanılan ön plan rengini döndürür. Bu ön plan rengine sahip hücreler görünür kalır.

Bu ölçütü, varsayılan sayfa türü olan Grid sayfalarındaki filtrelerle kullanın. Diğer filtre türleri için bu yöntemi çağırırsanız null değerini döndürür.

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

Return

Color|null: Filtre ölçütü olarak kullanılan ön plan rengi.


getVisibleValues()

Pivot tablo filtresinin gösterdiği değerleri döndürür.

Bu ölçüt yalnızca bir veritabanına bağlı olmayan pivot tablolardaki filtreler içindir. Diğer filtre türleri için boş bir dizi döndürür.

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

Return

String[]: Pivot tablo filtresinin gösterdiği değerler dizisi.