Class FilterCriteria

필터기준

이 클래스를 사용하여 기존 필터의 기준에 대한 정보를 가져오거나 복사합니다.

일반적인 용도

기준 복사

다음 샘플은 범위 A1:C20에 적용되는 필터를 가져오고, C열에 적용된 기준을 가져와서 B열에 복사합니다.
const ss = SpreadsheetApp.getActiveSheet();
const range = ss.getRange('A1:C20');
// Copies the filter criteria applied to column C.
const filter = range.getFilter();
const 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);

필터에 의해 숨겨진 값 가져오기

다음 샘플은 지정된 범위에 적용되는 필터를 가져와 필터가 숨기는 B열의 값을 로깅합니다.
const ss = SpreadsheetApp.getActiveSheet();
const range = ss.getRange('A1:C20');
const filter = range.getFilter();
// Gets the filter criteria applied to column B, then gets the hidden values.
const filterCriteria = filter.getColumnFilterCriteria(2).getHiddenValues();
// Logs the hidden values.
console.log(filterCriteria);

메서드

메서드반환 유형간략한 설명
copy()FilterCriteriaBuilder이 필터 기준을 복사하고 다른 필터에 적용할 수 있는 기준 작성 도구를 만듭니다.
getCriteriaType()BooleanCriteria기준의 불리언 유형(예: CELL_EMPTY)을 반환합니다.
getCriteriaValues()Object[]불리언 기준의 인수 배열을 반환합니다.
getHiddenValues()String[]필터가 숨기는 값을 반환합니다.
getVisibleBackgroundColor()Color필터 기준으로 사용되는 배경 색상을 반환합니다.
getVisibleForegroundColor()Color필터 기준으로 사용되는 전경 색상을 반환합니다.
getVisibleValues()String[]피벗 테이블 필터에 표시되는 값을 반환합니다.

자세한 문서

copy()

이 필터 기준을 복사하고 다른 필터에 적용할 수 있는 기준 작성 도구를 만듭니다.

이 메서드는 모든 유형의 필터에 사용할 수 있습니다. 시트 필터를 사용하는 경우 기준을 다른 열에 복사할 수 있습니다.

const ss = SpreadsheetApp.getActiveSheet();
const filter = ss.getFilter();
// Makes a copy of the filter criteria applied to column C.
const 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);

리턴

FilterCriteriaBuilder: 이 필터 기준을 기반으로 하는 필터 기준 작성 도구입니다.


getCriteriaType()

기준의 불리언 유형(예: CELL_EMPTY)을 반환합니다. 불리언 기준 유형에 관한 자세한 내용은 BooleanCriteria enum을 참고하세요.

이 메서드는 기존 기준을 대체하지 않고 필터에 불리언 조건 기준을 추가하는 데 자주 사용됩니다.

이 메서드는 모든 유형의 필터에 사용할 수 있습니다. 필터 기준이 불리언 조건이 아닌 경우 null를 반환합니다.

const ss = SpreadsheetApp.getActiveSheet();
// Gets the filter on the active sheet.
const filter = ss.getFilter();
// Gets the criteria type and returns a string representing the criteria type
// object.
const criteriaType =
    filter.getColumnFilterCriteria(2).getCriteriaType().toString();
// Logs the criteria type.
console.log(criteriaType);

리턴

BooleanCriteria: 불리언 기준의 유형입니다. 기준이 불리언 조건이 아닌 경우 null입니다.


getCriteriaValues()

불리언 기준의 인수 배열을 반환합니다. 일부 불리언 기준 유형에는 인수가 없으며 빈 배열을 반환합니다(예: CELL_NOT_EMPTY).

이 메서드는 기존 기준을 대체하지 않고 필터에 불리언 조건 기준을 추가하는 데 자주 사용됩니다.

  • 불리언 기준 유형을 가져오려면 getCriteriaType()를 사용합니다.
  • 기준 유형 및 기준 값을 사용하여 필터 기준을 만들거나 수정하려면 FilterCriteriaBuilder.withCriteria(criteria, args)를 참고하세요.

    이 메서드는 모든 유형의 필터에 사용할 수 있습니다.

    const ss = SpreadsheetApp.getActiveSheet();
    const 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.
    const criteriaValues = filter.getColumnFilterCriteria(2).getCriteriaValues();
    console.log(criteriaValues);

    리턴

    Object[]: 불리언 기준 유형에 적합한 인수 배열입니다. 인수의 개수와 유형이 FilterCriteriaBuilder 클래스의 상응하는 when...() 메서드와 일치합니다.


getHiddenValues()

필터가 숨기는 값을 반환합니다.

기본 시트 유형인 Grid 시트에서 필터와 함께 이 기준을 사용합니다. 다른 유형의 필터에 이 메서드를 호출하면 null를 반환합니다.

const ss = SpreadsheetApp.getActiveSheet();
const range = ss.getRange('A1:C20');
const filter = range.getFilter();
// Gets the filter criteria applied to column B, then gets the hidden values.
const filterCriteria = filter.getColumnFilterCriteria(2).getHiddenValues();
// Logs the hidden values.
console.log(filterCriteria);

리턴

String[]: 필터가 숨기는 값 배열입니다.


getVisibleBackgroundColor()

필터 기준으로 사용되는 배경 색상을 반환합니다. 이 배경 색상이 적용된 셀은 계속 표시됩니다.

기본 시트 유형인 Grid 시트에서 필터와 함께 이 기준을 사용하세요. 다른 유형의 필터에 이 메서드를 호출하면 null를 반환합니다.

const ss = SpreadsheetApp.getActiveSheet();
const range = ss.getRange('A1:C20');
// Logs the background color that column B is filtered by as a hexadecimal
// string.
const filter = range.getFilter();
const color = filter.getColumnFilterCriteria(2)
                  .getVisibleBackgroundColor()
                  .asRgbColor()
                  .asHexString();
console.log(color);

리턴

Color: 필터 기준으로 사용되는 배경 색상입니다.


getVisibleForegroundColor()

필터 기준으로 사용되는 전경 색상을 반환합니다. 이 전경 색상이 적용된 셀은 계속 표시됩니다.

기본 시트 유형인 Grid 시트에서 필터와 함께 이 기준을 사용합니다. 다른 유형의 필터에 이 메서드를 호출하면 null를 반환합니다.

const ss = SpreadsheetApp.getActiveSheet();
const range = ss.getRange('A1:C20');
// Logs the foreground color that column B is filtered by as a hexadecimal
// string.
const filter = range.getFilter();
const color = filter.getColumnFilterCriteria(2)
                  .getVisibleForegroundColor()
                  .asRgbColor()
                  .asHexString();
console.log(color);

리턴

Color: 필터 기준으로 사용되는 전경 색상입니다.


getVisibleValues()

피벗 테이블 필터에 표시되는 값을 반환합니다.

이 기준은 데이터베이스에 연결되지 않은 피벗 테이블의 필터에만 적용됩니다. 다른 유형의 필터의 경우 빈 배열을 반환합니다.

const ss = SpreadsheetApp.getActiveSheet();
// Gets the first pivot table on the sheet, then gets the visible values of its
// first filter.
const pivotTable = ss.getPivotTables()[0];
const pivotFilterValues =
    pivotTable.getFilters()[0].getFilterCriteria().getVisibleValues();
// Logs the visible values.
console.log(pivotFilterValues);

리턴

String[]: 피벗 테이블 필터에 표시되는 값 배열입니다.