Class Filter

Zadbaj o dobrą organizację dzięki kolekcji Zapisuj i kategoryzuj treści zgodnie ze swoimi preferencjami.
Filtr

Ta klasa umożliwia modyfikowanie istniejących filtrów w arkuszach Grid (domyślny typ arkusza). Arkusze siatki to zwykłe arkusze zawierające dane, które nie są połączone z bazą danych.

Jeśli w arkuszu nie ma jeszcze filtra, utwórz go, korzystając z filtra Range.createFilter().

Aby użyć tej klasy, musisz najpierw uzyskać dostęp do filtra arkusza siatki za pomocą właściwości Range.getFilter() lub Sheet.getFilter().

Typowe zastosowania

Usuwanie filtra

Poniższy przykład pokazuje filtr w aktywnym arkuszu i usuwa go.
let ss = SpreadsheetApp.getActiveSheet();
let filter = ss.getFilter();
// Removes the filter from the active sheet.
filter.remove();

Pobierz zakres, którego dotyczy filtr

Poniższy przykład pobiera filtr w aktywnym arkuszu, a następnie wykorzystuje metodę getRange() z tej klasy, aby zapisać zakres, do którego odnosi się filtr.
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());

Metody

MetodaZwracany typKrótki opis
getColumnFilterCriteria(columnPosition)FilterCriteriaPobiera kryteria filtrowania do określonej kolumny lub null, jeśli nie ma na niej zastosowanych filtrów.
getRange()RangePobiera zakres, którego dotyczy filtr.
remove()voidUsuwa ten filtr.
removeColumnFilterCriteria(columnPosition)FilterUsuwa kryteria filtrowania z określonej kolumny.
setColumnFilterCriteria(columnPosition, filterCriteria)FilterUstawia kryteria filtrowania dla określonej kolumny.
sort(columnPosition, ascending)FilterPosortuje przefiltrowany zakres według określonej kolumny z wyłączeniem pierwszego wiersza (wiersza nagłówka) w zakresie objętym tym filtrem.

Szczegółowa dokumentacja

getColumnFilterCriteria(columnPosition)

Pobiera kryteria filtrowania do określonej kolumny lub null, jeśli nie ma na niej zastosowanych filtrów.

Aby uzyskać więcej informacji o kryteriach filtrowania, powiąż tę metodę z metodami z klasy 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);

Parametry

NazwaTypOpis
columnPositionInteger1 pozycjonowana pozycja kolumny. Na przykład indeks B&B wynosi 2.

Zwróć

FilterCriteria – kryteria filtrowania,

Autoryzacja

Skrypty korzystające z tej metody wymagają autoryzacji przy użyciu co najmniej jednego z tych zakresów:

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

getRange()

Pobiera zakres, którego dotyczy filtr.

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

Zwróć

Range – zakres filtra. Aby uzyskać zakres w notacji A1, połącz tę metodę z metodą Range.getA1Notation().

Autoryzacja

Skrypty korzystające z tej metody wymagają autoryzacji przy użyciu co najmniej jednego z tych zakresów:

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

remove()

Usuwa ten filtr.

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

Autoryzacja

Skrypty korzystające z tej metody wymagają autoryzacji przy użyciu co najmniej jednego z tych zakresów:

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

removeColumnFilterCriteria(columnPosition)

Usuwa kryteria filtrowania z określonej kolumny.

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

Parametry

NazwaTypOpis
columnPositionInteger1 pozycjonowana pozycja kolumny. Na przykład indeks B&B wynosi 2.

Zwróć

Filter – filtr do łańcucha.

Autoryzacja

Skrypty korzystające z tej metody wymagają autoryzacji przy użyciu co najmniej jednego z tych zakresów:

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

setColumnFilterCriteria(columnPosition, filterCriteria)

Ustawia kryteria filtrowania dla określonej kolumny. Najpierw utwórz kreator kryteriów filtrowania za pomocą polecenia SpreadsheetApp.newFilterCriteria(). Następnie dodaj kryteria do kreatora za pomocą klasy FilterCriteriaBuilder. Po utworzeniu kryteriów ustaw je jako parametr filterCriteria dla tej metody.

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

Parametry

NazwaTypOpis
columnPositionInteger1 pozycjonowana pozycja kolumny. Na przykład indeks B&B wynosi 2.
filterCriteriaFilterCriteriaKryteria filtrowania, które należy ustawić. Jeśli ustawisz kryteria na null, usuniesz kryteria filtrowania z określonej kolumny. Możesz też użyć właściwości removeColumnFilterCriteria(columnPosition).

Zwróć

Filter – filtr do łańcucha.

Autoryzacja

Skrypty korzystające z tej metody wymagają autoryzacji przy użyciu co najmniej jednego z tych zakresów:

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

sort(columnPosition, ascending)

Posortuje przefiltrowany zakres według określonej kolumny z wyłączeniem pierwszego wiersza (wiersza nagłówka) w zakresie objętym tym filtrem.

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

Parametry

NazwaTypOpis
columnPositionInteger1 pozycjonowana pozycja kolumny. Na przykład indeks B&B wynosi 2.
ascendingBooleanJeśli true, sortuje przefiltrowany zakres w kolejności rosnącej. Jeśli ustawisz false, sortuje filtrowany zakres w kolejności malejącej.

Zwróć

Filter – filtr do łańcucha.

Autoryzacja

Skrypty korzystające z tej metody wymagają autoryzacji przy użyciu co najmniej jednego z tych zakresów:

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