Class FilterCriteria

FiltreÖlçütleri

Mevcut filtrelerdeki ölçütler hakkında bilgi edinmek veya bu ö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ığı için geçerli olan filtre ve 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ık için geçerli olan 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Ölçütlerin boole türünü döndürür (ör. CELL_EMPTY).
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()ColorFiltre ölçütü olarak kullanılan arka plan rengini döndürür.
getVisibleForegroundColor()ColorFiltre ö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ı dokümanlar

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. E-tablo 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çütleri oluşturucu.


getCriteriaType()

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

Kullanıcılar genellikle mevcut ölçütleri değiştirmeden bir filtreye mantıksal koşul ölçütü eklemek için bu yöntemi kullanır.

Bu yöntemi herhangi bir filtre türü için kullanabilirsiniz. Filtre ölçütleri 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: Boole ölçütünün türü veya ölçüt bir 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 mevcut ölçütleri değiştirmeden bir filtreye mantıksal koşul ölçütü eklemek için bu yöntemi kullanır.

  • Boole ölçütü türünü almak için getCriteriaType() değerini kullanın.
  • Filtre ölçütü oluşturmak veya değiştirmek için ölçüt türünü ve ölçüt değerlerini kullanmak istiyorsanız 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. Parametrelerin sayısı ve türleri, FilterCriteriaBuilder sınıfının ilgili when...() yöntemiyle eşleşiyor.


getHiddenValues()

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

Bu ölçütleri, varsayılan sayfa türü olan Grid sayfalarında filtrelerle kullanın. Bu yöntemi diğer filtre türleri için çağırırsanız null 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 bir değer 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çütleri, varsayılan sayfa türü olan Grid sayfalarında filtrelerle kullanın. Bu yöntemi diğer filtre türleri için çağırırsanız null 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: 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çütleri, varsayılan sayfa türü olan Grid sayfalarında filtrelerle kullanın. Bu yöntemi diğer filtre türleri için çağırırsanız null 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: 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 pivot tablolardaki veritabanına bağlı olmayan filtreler için geçerlidir. 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 bir değer dizisi.