Class FilterCriteria

FilterCriteria

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

Yaygın kullanım alanları

Ölçütleri kopyala

Aşağıdaki örnek A1:C20 aralığı için geçerli olan filtreyi alır, C sütununa uygulanan ölçütleri alır ve ölçütleri B sütununa kopyalar.
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);

Filtre tarafından gizlenen değerleri alma

Aşağıdaki örnek, belirli aralık için geçerli olan filtreyi alır ve filtrenin gizlediği B sütunundaki değerleri günlüğe kaydeder.
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);

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çütün boole türünü döndürür (örneğin, 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ı belgeler

copy()

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

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

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: Bu filtre ölçütlerini temel alan bir filtre ölçütü oluşturucu.


getCriteriaType()

Ölçütün boole türünü döndürür (örneğin, CELL_EMPTY). Boole ölçütü türleri hakkında bilgi edinmek için BooleanCriteria sıralaması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 tüm filtre türleri için kullanabilirsiniz. Filtre ölçütü bir boole koşulu değilse null değerini döndürür.

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 — Boole ölçütünün türü. Ö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ürlerinin bağımsız değişkenleri yoktur ve boş bir dizi döndürür. Örneğin, 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() işlevini kullanın.
  • Filtre ölçütü oluşturmak veya değiştirmek üzere ölçüt türünü ve ölçüt değerlerini kullanmak için FilterCriteriaBuilder.withCriteria(criteria, args) bölümüne bakın.

    Bu yöntemi tüm filtre türleri için kullanabilirsiniz.

    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[]: 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ürleri, FilterCriteriaBuilder sınıfının karşılık gelen when...() yöntemiyle eşleşir.


getHiddenValues()

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

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

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[]: 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 sayfadaki filtrelerle kullanın. Diğer filtre türleri için bu yöntemi çağırırsanız null değerini döndürür.

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: 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 durumda kalır.

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

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: 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.

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[]: Pivot tablo filtresinin gösterdiği bir değer dizisi.