Class FilterCriteria

FilterCriteria

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

Penggunaan umum

Salin kriteria

Contoh berikut mendapatkan filter yang berlaku pada 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 diterapkan pada rentang yang diberikan dan mencatat nilai dari kolom B yang disembunyikan filter ke dalam log.
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 builder kriteria yang dapat Anda terapkan ke filter lain.
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 oleh filter tabel pivot.

Dokumentasi mendetail

copy()

Menyalin kriteria filter ini dan membuat builder kriteria yang dapat Anda terapkan ke filter lain.

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

Return

FilterCriteriaBuilder — Pembuat kriteria filter berdasarkan kriteria filter ini.


getCriteriaType()

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

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

Anda dapat menggunakan metode ini untuk semua jenis filter. Jika kriteria filter bukan kondisi boolean, tampilkan 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);

Return

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


getCriteriaValues()

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

Pengguna 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 memodifikasi kriteria filter, lihat FilterCriteriaBuilder.withCriteria(criteria, args).

    Anda dapat menggunakan metode ini untuk semua jenis filter.

    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[] — Array argumen yang sesuai dengan jenis kriteria boolean. Jumlah argumen dan jenisnya cocok dengan metode when...() class FilterCriteriaBuilder yang sesuai.


getHiddenValues()

Menampilkan nilai yang disembunyikan filter.

Gunakan kriteria ini dengan filter pada sheet Grid, yang merupakan jenis sheet default. Menampilkan null jika Anda memanggil metode ini untuk jenis filter lain.

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[] — Array nilai yang disembunyikan filter.


getVisibleBackgroundColor()

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

Gunakan kriteria ini dengan filter pada sheet Grid, yang merupakan jenis sheet default. Menampilkan null jika Anda memanggil metode ini untuk jenis filter lain.

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 — 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 pada sheet Grid, yang merupakan jenis sheet default. Menampilkan null jika Anda memanggil metode ini untuk jenis filter lain.

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 — Warna latar depan yang digunakan sebagai kriteria filter.


getVisibleValues()

Menampilkan nilai yang ditampilkan oleh 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);

Return

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