Class Filter

Filtr

Użyj tej klasy, aby modyfikować istniejące filtry w Gridarkuszach, czyli domyślnym typie arkusza. Arkusze siatki to zwykłe arkusze z danymi, które nie są połączone z bazą danych.

Jeśli filtr nie istnieje jeszcze w arkuszu, utwórz go za pomocą ikony Range.createFilter().

Aby używać tej klasy, musisz najpierw uzyskać dostęp do filtra arkusza siatki za pomocą metody Range.getFilter() lub Sheet.getFilter().

Typowe zastosowania

Usuwanie filtra

Poniższy przykład pobiera filtr z aktywnego arkusza i usuwa go.
const ss = SpreadsheetApp.getActiveSheet();
const filter = ss.getFilter();
// Removes the filter from the active sheet.
filter.remove();

Pobieranie zakresu, do którego ma zastosowanie filtr

Poniższy przykład pobiera filtr z aktywnego arkusza, a następnie używa metody getRange() z tej klasy, aby zarejestrować zakres, do którego stosowany jest filtr.
const ss = SpreadsheetApp.getActiveSheet();
// Gets the existing filter on the active sheet.
const 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)FilterCriteria|nullPobiera kryteria filtra w określonej kolumnie lub null, jeśli w kolumnie nie ma zastosowanych kryteriów filtra.
getRange()RangePobiera zakres, do którego odnosi się ten filtr.
remove()voidUsuwa ten filtr.
removeColumnFilterCriteria(columnPosition)FilterUsuwa kryteria filtrowania z określonej kolumny.
setColumnFilterCriteria(columnPosition, filterCriteria)FilterUstawia kryteria filtra w określonej kolumnie.
sort(columnPosition, ascending)FilterSortuje odfiltrowany zakres według określonej kolumny, z wyłączeniem pierwszego wiersza (wiersza nagłówka) w zakresie, do którego odnosi się ten filtr.

Szczegółowa dokumentacja

getColumnFilterCriteria(columnPosition)

Pobiera kryteria filtra w określonej kolumnie lub null, jeśli w kolumnie nie ma zastosowanych kryteriów filtra.

Aby uzyskać więcej informacji o kryteriach filtra, połącz tę metodę z metodami z klasy FilterCriteria.

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

Parametry

NazwaTypOpis
columnPositionIntegerPozycja kolumny liczona od 1. Na przykład indeks kolumny B to 2.

Powrót

FilterCriteria|null – kryteria filtra.

Autoryzacja

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

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

getRange()

Pobiera zakres, do którego odnosi się ten filtr.

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

Powrót

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 z użyciem 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.
const ss = SpreadsheetApp.getActiveSheet();
const filter = ss.getFilter();
filter.remove();

Autoryzacja

Skrypty korzystające z tej metody wymagają autoryzacji z użyciem 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.
const ss = SpreadsheetApp.getActiveSheet();
const filter = ss.getFilter();
filter.removeColumnFilterCriteria(2);

Parametry

NazwaTypOpis
columnPositionIntegerPozycja kolumny liczona od 1. Na przykład indeks kolumny B to 2.

Powrót

Filter – filtr do łączenia.

Autoryzacja

Skrypty korzystające z tej metody wymagają autoryzacji z użyciem 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 filtra w określonej kolumnie. Najpierw utwórz narzędzie do tworzenia kryteriów filtra za pomocą SpreadsheetApp.newFilterCriteria(). Następnie dodaj kryteria do narzędzia do tworzenia za pomocą klasy FilterCriteriaBuilder. Po utworzeniu kryteriów ustaw je jako parametr filterCriteria tej metody.

const ss = SpreadsheetApp.getActiveSheet();
const 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
columnPositionIntegerPozycja kolumny liczona od 1. Na przykład indeks kolumny B to 2.
filterCriteriaFilterCriteriaKryteria filtra do ustawienia. Jeśli ustawisz kryteria na null, spowoduje to usunięcie kryteriów filtrowania z określonej kolumny. Możesz też użyć removeColumnFilterCriteria(columnPosition).

Powrót

Filter – filtr do łączenia.

Autoryzacja

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

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

sort(columnPosition, ascending)

Sortuje odfiltrowany zakres według określonej kolumny, z wyłączeniem pierwszego wiersza (wiersza nagłówka) w zakresie, do którego odnosi się ten filtr.

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

Parametry

NazwaTypOpis
columnPositionIntegerPozycja kolumny liczona od 1. Na przykład indeks kolumny B to 2.
ascendingBooleanJeśli true, posortuje zakres po zastosowaniu filtra w kolejności rosnącej; jeśli false, posortuje zakres po zastosowaniu filtra w kolejności malejącej.

Powrót

Filter – filtr do łączenia.

Autoryzacja

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

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