Class FilterCriteria

FilterCriteria

Gunakan kelas ini untuk mendapatkan informasi atau menyalin kriteria pada filter yang ada.

Penggunaan umum

Salin kriteria

Contoh berikut mendapatkan filter yang berlaku untuk rentang A1:C20, mendapatkan kriteria diterapkan ke kolom C, dan menyalin kriteria ke kolom B.
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);

Mendapatkan nilai yang disembunyikan oleh filter

Contoh berikut mendapatkan filter yang berlaku untuk rentang tertentu dan mencatat nilai dari log kolom B yang disembunyikan oleh {i>filter<i}.
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);

Metode

MetodeJenis hasil yang ditampilkanDeskripsi singkat
copy()FilterCriteriaBuilderMenyalin kriteria filter ini dan membuat pembuat kriteria yang dapat Anda terapkan ke filter lainnya filter.
getCriteriaType()BooleanCriteriaMenampilkan jenis boolean kriteria, misalnya, CELL_EMPTY.
getCriteriaValues()Object[]Menampilkan array argumen untuk kriteria boolean.
getHiddenValues()String[]Menampilkan nilai yang disembunyikan filter.
getVisibleBackgroundColor()ColorMenampilkan warna latar belakang yang digunakan sebagai kriteria filter.
getVisibleForegroundColor()ColorMenampilkan warna latar depan yang digunakan sebagai kriteria filter.
getVisibleValues()String[]Menampilkan nilai yang ditampilkan filter tabel pivot.

Dokumentasi mendetail

copy()

Menyalin kriteria filter ini dan membuat pembuat kriteria yang dapat Anda terapkan ke filter lainnya filter.

Anda dapat menggunakan metode ini dengan jenis filter apa pun. Jika Anda menggunakan filter {i>sheet<i}, Anda dapat menyalin kriteria ke kolom lain.

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);

Pulang pergi

FilterCriteriaBuilder — Pembuat kriteria filter berdasarkan kriteria filter ini.


getCriteriaType()

Menampilkan jenis boolean kriteria, misalnya, CELL_EMPTY. Untuk mempelajari jenis-jenis kriteria boolean, lihat enum BooleanCriteria.

Orang sering menggunakan metode ini untuk menambahkan kriteria kondisi boolean ke filter tanpa mengganti kriteria yang ada.

Anda dapat menggunakan metode ini untuk jenis filter apa pun. Jika kriteria filter bukan boolean kondisi, menampilkan null.

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);

Pulang pergi

BooleanCriteria — Jenis kriteria boolean, atau null jika kriteria bukan boolean .


getCriteriaValues()

Menampilkan array argumen untuk kriteria boolean. Beberapa jenis kriteria boolean tidak memiliki argumen dan menampilkan array kosong, misalnya, CELL_NOT_EMPTY.

Orang sering menggunakan metode ini untuk menambahkan kriteria kondisi boolean ke filter tanpa mengganti kriteria yang ada.

  • Untuk mendapatkan jenis kriteria boolean, gunakan getCriteriaType().
  • Untuk menggunakan jenis kriteria dan nilai kriteria guna membuat atau mengubah kriteria filter, lihat FilterCriteriaBuilder.withCriteria(criteria, args).

    Anda dapat menggunakan metode ini untuk jenis filter apa pun.

    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);

    Pulang pergi

    Object[] — Array argumen yang sesuai dengan jenis kriteria boolean. Jumlah argumen dan jenisnya cocok dengan metode when...() yang sesuai dari class FilterCriteriaBuilder.


getHiddenValues()

Menampilkan nilai yang disembunyikan filter.

Gunakan kriteria ini dengan filter di sheet Grid, jenis sheet default. Menampilkan null jika Anda memanggil metode ini untuk jenis filter lainnya.

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);

Pulang pergi

String[] — Array nilai yang disembunyikan filter.


getVisibleBackgroundColor()

Menampilkan warna latar belakang yang digunakan sebagai kriteria filter. Sel dengan warna latar belakang ini tetap ada terlihat.

Gunakan kriteria ini dengan filter di sheet Grid, jenis sheet default. Menampilkan null jika Anda memanggil metode ini untuk jenis filter lainnya.

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);

Pulang pergi

Color — Warna latar belakang yang digunakan sebagai kriteria filter.


getVisibleForegroundColor()

Menampilkan warna latar depan yang digunakan sebagai kriteria filter. Sel dengan warna latar depan ini tetap terlihat.

Gunakan kriteria ini dengan filter di sheet Grid, jenis sheet default. Menampilkan null jika Anda memanggil metode ini untuk jenis filter lainnya.

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);

Pulang pergi

Color — Warna latar depan yang digunakan sebagai kriteria filter.


getVisibleValues()

Menampilkan nilai yang ditampilkan filter tabel pivot.

Kriteria ini hanya untuk filter pada tabel pivot yang tidak terhubung ke database. Menampilkan array kosong untuk jenis filter lainnya.

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);

Pulang pergi

String[] — Array nilai yang ditampilkan filter tabel pivot.