Class Filter

Filter

Gunakan class ini untuk mengubah filter yang ada pada sheet Grid, jenis default sheet. Lembar petak adalah lembar reguler dengan data yang tidak terhubung ke {i>database<i}.

Jika filter belum ada di sheet, buat filter menggunakan Range.createFilter().

Untuk menggunakan class ini, Anda harus mengakses filter sheet petak terlebih dahulu menggunakan Range.getFilter() atau Sheet.getFilter().

Penggunaan umum

Menghapus filter

Contoh di bawah mendapatkan filter di sheet yang aktif dan menghapusnya.
let ss = SpreadsheetApp.getActiveSheet();
let filter = ss.getFilter();
// Removes the filter from the active sheet.
filter.remove();

Dapatkan rentang yang sesuai dengan filter

Contoh di bawah mendapatkan filter pada sheet aktif, lalu menggunakan metode getRange() dari class ini untuk mencatat log rentang tempat filter diterapkan.
let ss = SpreadsheetApp.getActiveSheet();
// Gets the existing filter on the active sheet.
let filter = ss.getFilter();
// Logs the range that the filter applies to in A1 notation.
console.log(filter.getRange().getA1Notation());

Metode

MetodeJenis hasil yang ditampilkanDeskripsi singkat
getColumnFilterCriteria(columnPosition)FilterCriteriaMendapatkan kriteria filter di kolom yang ditentukan, atau null jika kolom tidak memiliki kriteria filter yang diterapkan.
getRange()RangeMendapatkan rentang tempat filter ini diterapkan.
remove()voidMenghapus filter ini.
removeColumnFilterCriteria(columnPosition)FilterMenghapus kriteria filter dari kolom yang ditentukan.
setColumnFilterCriteria(columnPosition, filterCriteria)FilterMenetapkan kriteria filter pada kolom yang ditentukan.
sort(columnPosition, ascending)FilterMengurutkan rentang yang difilter menurut kolom yang ditentukan, dengan mengecualikan baris pertama (baris header) dalam rentang tempat filter ini diterapkan.

Dokumentasi mendetail

getColumnFilterCriteria(columnPosition)

Mendapatkan kriteria filter di kolom yang ditentukan, atau null jika kolom tidak memiliki kriteria filter yang diterapkan.

Untuk mendapatkan detail selengkapnya tentang kriteria filter, rantai metode ini dengan metode dari class FilterCriteria.

let ss = SpreadsheetApp.getActiveSheet();
let filter = ss.getFilter();
  // Gets the filter criteria applied to column B of the active sheet
  // and logs the hidden values.
let filterCriteria = filter.getColumnFilterCriteria(2).getHiddenValues();
console.log(filterCriteria);

Parameter

NamaJenisDeskripsi
columnPositionIntegerPosisi kolom yang diindeks. Misalnya, indeks kolom B adalah 2.

Return

FilterCriteria — Kriteria filter.

Otorisasi

Skrip yang menggunakan metode ini memerlukan otorisasi dengan satu atau beberapa cakupan berikut:

  • https://www.googleapis.com/auth/spreadsheets.currentonly
  • https://www.googleapis.com/auth/spreadsheets

getRange()

Mendapatkan rentang tempat filter ini diterapkan.

// Gets the existing filter on the active sheet.
let ss = SpreadsheetApp.getActiveSheet();
let filter = ss.getFilter();
// Logs the range that the filter applies to in A1 notation.
console.log(filter.getRange().getA1Notation());

Return

Range — Rentang filter. Untuk mendapatkan rentang dalam notasi A1, rantai metode ini dengan Range.getA1Notation().

Otorisasi

Skrip yang menggunakan metode ini memerlukan otorisasi dengan satu atau beberapa cakupan berikut:

  • https://www.googleapis.com/auth/spreadsheets.currentonly
  • https://www.googleapis.com/auth/spreadsheets

remove()

Menghapus filter ini.

// Removes the filter from the active sheet.
let ss = SpreadsheetApp.getActiveSheet();
let filter = ss.getFilter();
filter.remove();

Otorisasi

Skrip yang menggunakan metode ini memerlukan otorisasi dengan satu atau beberapa cakupan berikut:

  • https://www.googleapis.com/auth/spreadsheets.currentonly
  • https://www.googleapis.com/auth/spreadsheets

removeColumnFilterCriteria(columnPosition)

Menghapus kriteria filter dari kolom yang ditentukan.

// Removes the filter criteria from column B.
let ss = SpreadsheetApp.getActiveSheet();
let filter = ss.getFilter();
filter.removeColumnFilterCriteria(2);

Parameter

NamaJenisDeskripsi
columnPositionIntegerPosisi kolom yang diindeks. Misalnya, indeks kolom B adalah 2.

Return

Filter — Filter, untuk perantaian.

Otorisasi

Skrip yang menggunakan metode ini memerlukan otorisasi dengan satu atau beberapa cakupan berikut:

  • https://www.googleapis.com/auth/spreadsheets.currentonly
  • https://www.googleapis.com/auth/spreadsheets

setColumnFilterCriteria(columnPosition, filterCriteria)

Menetapkan kriteria filter pada kolom yang ditentukan. Pertama, buat builder kriteria filter menggunakan SpreadsheetApp.newFilterCriteria(). Kemudian, tambahkan kriteria ke builder menggunakan class FilterCriteriaBuilder. Setelah Anda membuat kriteria, tetapkan sebagai parameter filterCriteria untuk metode ini.

let ss = SpreadsheetApp.getActiveSheet();
let filter = ss.getFilter();
// Builds the filter criteria to use as a parameter for setColumnFilterCriteria.
const criteria = SpreadsheetApp.newFilterCriteria()
                             .setHiddenValues(["Hello", "World"])
                             .build();
// Sets the filter criteria for column C.
filter.setColumnFilterCriteria(3, criteria);

Parameter

NamaJenisDeskripsi
columnPositionIntegerPosisi kolom yang diindeks. Misalnya, indeks kolom B adalah 2.
filterCriteriaFilterCriteriaKriteria filter yang akan ditetapkan. Jika Anda menetapkan kriteria ke null, kriteria filter akan dihapus dari kolom yang ditentukan. Anda juga dapat menggunakan removeColumnFilterCriteria(columnPosition).

Return

Filter — Filter, untuk perantaian.

Otorisasi

Skrip yang menggunakan metode ini memerlukan otorisasi dengan satu atau beberapa cakupan berikut:

  • https://www.googleapis.com/auth/spreadsheets.currentonly
  • https://www.googleapis.com/auth/spreadsheets

sort(columnPosition, ascending)

Mengurutkan rentang yang difilter menurut kolom yang ditentukan, dengan mengecualikan baris pertama (baris header) dalam rentang tempat filter ini diterapkan.

// Gets the existing filter and sorts it by column B in ascending order.
let ss = SpreadsheetApp.getActiveSheet();
let filter = ss.getFilter();
filter.sort(2, true);

Parameter

NamaJenisDeskripsi
columnPositionIntegerPosisi kolom yang diindeks. Misalnya, indeks kolom B adalah 2.
ascendingBooleanJika true, akan mengurutkan rentang yang difilter dalam urutan menaik; jika false, akan mengurutkan rentang yang difilter dalam urutan menurun.

Return

Filter — Filter, untuk perantaian.

Otorisasi

Skrip yang menggunakan metode ini memerlukan otorisasi dengan satu atau beberapa cakupan berikut:

  • https://www.googleapis.com/auth/spreadsheets.currentonly
  • https://www.googleapis.com/auth/spreadsheets