필터를 사용하면 스프레드시트를 볼 때 표시되는 데이터를 정렬하고 필터링할 수 있습니다. 필터는 스프레드시트의 데이터 값을 변경하지 않습니다. 필터를 사용하여 정보를 일시적으로 숨기거나 정렬할 수 있습니다. 지정된 필터 기준과 일치하는 데이터는 필터가 사용 설정되어 있으면 표시되지 않습니다. 또한 필터 보기를 사용하면 이름이 지정된 여러 필터를 저장하고 원할 때 필터 간에 전환할 수 있습니다.
다음은 필터의 몇 가지 사용 사례입니다.
- 특정 열을 기준으로 데이터를 정렬합니다. 예를 들어 성을 기준으로 사용자 레코드를 정렬합니다.
- 특정 조건을 충족하는 데이터를 숨깁니다. 예를 들어 2년 이상 된 레코드를 모두 숨깁니다.
- 특정 값과 일치하는 데이터를 숨깁니다. 예를 들어 '종료됨' 상태의 모든 문제를 숨깁니다.
기본 필터
스프레드시트의 BasicFilter
는 스프레드시트를 볼 때마다 적용되는 기본 필터입니다. 스프레드시트에는 시트당 하나의 기본 필터가 있을 수 있습니다. 기본 필터를 지우면 사용 중지됩니다. 이렇게 하면 스프레드시트에서 필터와 모든 설정이 삭제됩니다.
동일한 필터를 다시 사용하려면 기준을 다시 설정해야 합니다.
기본 필터 관리
기본 필터를 설정하거나 삭제하려면 spreadsheets.batchUpdate
메서드를 적절한 요청 유형과 함께 사용합니다.
- 기본 필터를 설정하려면
SetBasicFilterRequest
메서드를 사용합니다. - 기본 필터를 삭제하려면
ClearBasicFilterRequest
메서드를 사용합니다.
기본 필터를 나열하려면 spreadsheets.get
메서드를 사용하고 fields
URL 매개변수를 sheets/basicFilter
로 설정합니다. 다음 spreadsheets.get
코드 샘플은 필드 마스크가 포함된 Google Sheets URL을 보여줍니다.
GET https://sheets.googleapis.com/v4/spreadsheets/SPREADSHEET_ID?fields=sheets/basicFilter)
필터 보기
FilterView
는 언제든지 끄고 켤 수 있는 이름이 지정된 필터입니다. 스프레드시트 하나에 여러 필터 보기가 있을 수 있지만 한 번에 하나씩만 적용할 수 있습니다.
다음은 필터 보기의 몇 가지 사용 사례입니다.
- 데이터를 볼 때 전환하고자 하는 필터가 여러 개 있습니다.
- 스프레드시트에 대한 수정 액세스 권한이 없지만 필터를 적용하려는 경우 이 경우 나에게만 표시되는 임시 필터 보기를 만들 수 있습니다.
스프레드시트를 공유하는 사람마다 데이터를 다르게 볼 수 있습니다. 스프레드시트 URL에
spreadsheetId
및filterViewId
를 제공하여 적용할 필터 뷰를 지정할 수 있습니다. 이렇게 하려면 필터 뷰를 만들 때 응답에 반환된filterViewId
를 사용하세요.다음 코드 샘플은 필터 보기가 포함된 Google Sheets URL을 보여줍니다.
https://docs.google.com/spreadsheets/d/SPREADSHEET_ID/edit#gid=0&fvid=FILTER_VIEW_ID
필터 보기 관리
필터 뷰를 만들거나, 복제하거나, 수정하거나, 삭제하려면 spreadsheets.batchUpdate
메서드를 적절한 요청 유형과 함께 사용합니다.
- 필터 보기를 만들려면
AddFilterViewRequest
메서드를 사용합니다. - 필터 뷰의 사본을 만들려면
DuplicateFilterViewRequest
메서드를 사용하세요. - 필터 뷰의 속성을 수정하려면
UpdateFilterViewRequest
메서드를 사용합니다. - 필터 뷰를 삭제하려면
DeleteFilterViewRequest
메서드를 사용하세요.
모든 필터 뷰를 나열하려면 spreadsheets.get
메서드를 사용하고 fields
URL 매개변수를 sheets/filterViews
로 설정합니다. 다음 spreadsheets.get
코드 샘플은 필드 마스크가 포함된 Google Sheets URL을 보여줍니다.
GET https://sheets.googleapis.com/v4/spreadsheets/SPREADSHEET_ID?fields=sheets/filterViews)
필터 표현
다음 코드 샘플은 FilterView
객체의 JSON 표현을 보여줍니다. BasicFilter
객체는 filterViewId
및 title
필드가 없고 이름이 지정된 범위를 사용할 수 없다는 점을 제외하면 동일합니다.
{
"filterViewId": number,
"title": string,
"range": {
object(GridRange)
},
"namedRangeId": string,
"sortSpecs": [
{
object(SortSpec)
}
],
"criteria": {
string: {
object(FilterCriteria)
},
...
}
}
예시 데이터
이 문서의 나머지 부분에서는 아래의 판매 데이터 표 예를 참고합니다.
A | B | C | D | E | F | G | |
1 | 항목 카테고리 | 모델 번호 | 비용 | 수량 | 지역 | 영업 담당자 | 배송 날짜 |
2 | 관람차 | W-24 | 20.50달러 | 4 | 서부 | 베스 | 2016년 3월 1일 |
3 | 문 | D-01X | 15달러 | 2 | 남부 | 아미르 | 2016년 3월 15일 |
4 | 프레임 | FR-0B1 | 34달러 | 8 | 동부 | Hannah | 2016년 3월 12일 |
5 | 패널 | P-034 | 6달러 | 4 | 북 | 데빈 | 2016년 3월 15일 |
6 | 패널 | P-052 | 11.50달러 | 7 | 동부 | 에리크 | 2016년 5월 16일 |
7 | 관람차 | W-24 | 20.50달러 | 11 | 남부 | Sheldon | 2016년 4월 30일 |
8 | 엔진 | ENG-0161 | 330.00달러 | 2 | 북 | 제시 | 2016년 7월 2일 |
정렬 사양
필터에는 여러 정렬 지정이 있을 수 있습니다. 이러한 사양은 데이터를 정렬하는 방법을 결정하며 지정된 순서대로 적용됩니다. SortSpec.dimensionIndex
속성은 정렬이 적용되어야 하는 열 색인을 지정합니다.
다음 코드 샘플은 정렬 사양을 보여줍니다.
[
{
"dimensionIndex": 3,
"sortOrder": "ASCENDING"
},
{
"dimensionIndex": 6,
"sortOrder": "ASCENDING"
}
]
판매 데이터 예시에 적용하면 이 사양은 먼저 '수량'을 기준으로 정렬한 후 2개 행의 수량이 같은 경우 '배송일'을 기준으로 정렬합니다.
A | B | C | D | E | F | G | |
1 | 항목 카테고리 | 모델 번호 | 비용 | 수량 | 지역 | 영업 담당자 | 배송 날짜 |
2 | 문 | D-01X | 15달러 | 2 | 남부 | 아미르 | 2016년 3월 15일 |
3 | 엔진 | ENG-0161 | 330.00달러 | 2 | 북 | 제시 | 2016년 7월 2일 |
4 | 관람차 | W-24 | 20.50달러 | 4 | 서부 | 베스 | 2016년 3월 1일 |
5 | 패널 | P-034 | 6달러 | 4 | 북 | 데빈 | 2016년 3월 15일 |
6 | 패널 | P-052 | 11.50달러 | 7 | 동부 | 에리크 | 2016년 5월 16일 |
7 | 프레임 | FR-0B1 | 34달러 | 8 | 동부 | Hannah | 2016년 3월 12일 |
8 | 관람차 | W-24 | 20.50달러 | 11 | 남부 | Sheldon | 2016년 4월 30일 |
필터링 기준
FilterCriteria
메서드는 기본 필터 또는 필터 뷰에 표시하거나 숨길 스프레드시트 데이터를 결정합니다. 각 기준은 특정 열의 값에 따라 달라집니다. 키는 열 색인이 되고 값은 기준인 맵으로 필터 기준을 제공합니다.
불리언 condition
를 사용하여 지정된 기준의 경우 값이 표시되려면 조건이 True
이어야 합니다. 조건이 hiddenValues
보다 우선 적용되지는 않습니다. 값이 hiddenValues
아래에 나열되는 경우 값과 일치하는 모든 항목이 여전히 숨겨집니다.
다음 코드 샘플은 필터 기준 맵을 보여줍니다.
{
0: {
'hiddenValues': ['Panel']
},
6: {
'condition': {
'type': 'DATE_BEFORE',
'values': {
'userEnteredValue': '4/30/2016'
}
}
}
}
판매 데이터 예시에 적용하면 이 기준은 '상품 카테고리'가 '패널'이 아닌 행 및 '배송 날짜'가 2016년 4월 30일 이전인 행만 표시합니다.
A | B | C | D | E | F | G | |
1 | 항목 카테고리 | 모델 번호 | 비용 | 수량 | 지역 | 영업 담당자 | 배송 날짜 |
2 | 관람차 | W-24 | 20.50달러 | 4 | 서부 | 베스 | 2016년 3월 1일 |
3 | 문 | D-01X | 15달러 | 2 | 남부 | 아미르 | 2016년 3월 15일 |
4 | 프레임 | FR-0B1 | 34달러 | 8 | 동부 | Hannah | 2016년 3월 12일 |
샘플
다음 코드 샘플은 필터 뷰를 만들고 복제한 다음 위의 판매 데이터 예시를 사용하여 복제된 버전을 업데이트하는 방법을 보여줍니다.