1. 서론
안녕하세요, 지난 글에서는 구글 앱 스크립트의 SpreadSheetApp의 기능을 정리해보았습니다.
Spreadsheet 클래스는 스프레드시트 파일에 엑세스하고 수정하는 보다 많은 기능들이 있는데요.
이번 글에서는 구글 앱 스크립트의 Spreadsheet 클래스의 기능을 정리해보려고 합니다.
혹시 지난 포스팅을 못 보신 분들은 아래 링크를 클릭해 주세요.
2. Spreadsheet 기능 정리
Spreadsheet 클래스의 기능(method)을 정리해 보겠습니다.
Method 사용 예 )
const spreadsheet = SpreadsheetApp.getActive();
spreadsheet.getSheetName();
기능 (Method) | ReturnType | 설명 |
---|---|---|
addDeveloperMetadata(key) | Spreadsheet | 지정된 키가 포함된 개발자 메타데이터를 최상위 스프레드시트에 추가합니다. |
addDeveloperMetadata(key, visibility) | Spreadsheet | 지정된 키와 공개 상태가 포함된 개발자 메타데이터를 스프레드시트에 추가합니다. |
addDeveloperMetadata(key, value) | Spreadsheet | 지정된 키와 값이 포함된 개발자 메타데이터를 스프레드시트에 추가합니다. |
addDeveloperMetadata(key, value, visibility) | Spreadsheet | 지정된 키, 값, 공개 상태가 포함된 개발자 메타데이터를 스프레드시트에 추가합니다. |
addEditor(emailAddress) | Spreadsheet | Spreadsheet의 편집자 목록에 지정된 사용자를 추가합니다. |
addEditor(user) | Spreadsheet | Spreadsheet의 편집자 목록에 지정된 사용자를 추가합니다. |
addEditors(emailAddresses) | Spreadsheet | Spreadsheet의 편집자 목록에 지정된 사용자 배열을 추가합니다. |
addMenu(name, subMenus) | void | 스프레드시트 UI에 새 메뉴를 만듭니다. |
addViewer(emailAddress) | Spreadsheet | Spreadsheet의 뷰어 목록에 지정된 사용자를 추가합니다. |
addViewer(user) | Spreadsheet | Spreadsheet의 뷰어 목록에 지정된 사용자를 추가합니다. |
addViewers(emailAddresses) | Spreadsheet | Spreadsheet의 뷰어 목록에 지정된 사용자 배열을 추가합니다. |
appendRow(rowContents) | Sheet | 시트의 현재 데이터 영역 아래쪽에 행을 추가합니다. |
autoResizeColumn(columnPosition) | Sheet | 해당 열의 너비를 해당 내용에 맞게 설정합니다. |
copy(name) | Spreadsheet | 스프레드시트를 복사하고 새 스프레드시트를 반환합니다. |
createDeveloperMetadataFinder() | DeveloperMetadataFinder | 이 스프레드시트 범위 내에서 개발자 메타데이터를 찾기 위한 DeveloperMetadataFinder를 반환합니다 . |
createTextFinder(findText) | TextFinder | 스프레드시트 내에서 텍스트를 찾고 바꾸는 데 사용할 수 있는 스프레드시트용 텍스트 찾기를 만듭니다. |
deleteActiveSheet() | Sheet | 현재 활성화된 시트를 삭제합니다. |
deleteColumn(columnPosition) | Sheet | 해당 열 위치의 열을 삭제합니다. |
deleteColumns(columnPosition, howMany) | void | 주어진 열 위치에서 시작하는 여러 열을 삭제합니다. |
deleteRow(rowPosition) | Sheet | 주어진 행 위치에 있는 행을 삭제합니다. |
deleteRows(rowPosition, howMany) | void | 지정된 행 위치부터 시작하여 여러 행을 삭제합니다. |
deleteSheet(sheet) | void | 지정된 시트를 삭제합니다. |
duplicateActiveSheet() | Sheet | 활성 시트를 복제하여 활성 시트로 만듭니다. |
getActiveCell() | Range | 이 시트의 활성 셀을 반환합니다. |
getActiveRange() | Range | 활성 시트에서 선택한 범위를 반환하거나 활성 범위가 없는 경우 null을 반환합니다. |
getActiveRangeList() | RangeList | 활성 시트에서 활성 범위 목록을 활성 범위가 없는 경우 null을 반환합니다 . |
getActiveSheet() | Sheet | 스프레드시트의 활성 시트를 가져옵니다. |
getAs(contentType) | Blob | 이 개체 내부의 데이터를 지정된 콘텐츠 유형으로 변환된 blob으로 반환합니다. |
getBandings() | Banding[] | 이 스프레드시트의 모든 밴딩을 반환합니다. |
getBlob() | Blob | 이 객체 내부의 데이터를 blob으로 반환합니다. |
getColumnWidth(columnPosition) | Integer | 주어진 열의 너비를 픽셀 단위로 가져옵니다. |
getCurrentCell() | Range | 활성 시트의 현재 셀을 반환하거나 현재 셀이 없는 경우 null을 반환합니다. |
getDataRange() | Range | 데이터가 존재하는 차원에 해당하는 Range를 반환합니다 . |
getDataSourceFormulas() | DataSourceFormula[] | 모든 데이터 소스 수식을 가져옵니다. |
getDataSourcePivotTables() | DataSourcePivotTable[] | 모든 데이터 소스 피벗 테이블을 가져옵니다. |
getDataSourceRefreshSchedules() | DataSourceRefreshSchedule[] | 이 스프레드시트의 새로 고침 일정을 가져옵니다. |
getDataSourceSheets() | DataSourceSheet[] | 스프레드시트의 모든 데이터 소스 시트를 반환합니다. |
getDataSourceTables() | DataSourceTable[] | 모든 데이터 소스 테이블을 가져옵니다. |
getDataSources() | DataSource[] | 스프레드시트의 모든 데이터 소스를 반환합니다. |
getDeveloperMetadata() | DeveloperMetadata[] | 최상위 스프레드시트와 연결된 개발자 메타데이터를 가져옵니다. |
getEditors() | User[] | 이 Spreadsheet에 대한 편집자 목록을 가져옵니다. |
getFormUrl() | String | 이 스프레드시트에 응답을 보내는 양식의 URL을 반환하거나 URL이 스프레드시트에 연결된 양식이 없는 경우 null을 반환합니다. |
getFrozenColumns() | Integer | 고정된 열 수를 반환합니다. |
getFrozenRows() | Integer | 고정된 행 수를 반환합니다. |
getId() | String | 이 스프레드시트의 고유 식별자를 가져옵니다. |
getImages() | OverGridImage[] | 시트의 모든 그리드 위 이미지를 반환합니다. |
getIterativeCalculationConvergenceThreshold() | Number | 반복 계산 중에 사용된 임계값을 반환합니다. |
getLastColumn() | Integer | 콘텐츠가 있는 마지막 열의 위치를 반환합니다. |
getLastRow() | Integer | 콘텐츠가 있는 마지막 행의 위치를 반환합니다. |
getMaxIterativeCalculationCycles() | Integer | 반복 계산 중에 사용할 최대 반복 횟수를 반환합니다. |
getName() | String | 문서의 이름을 가져옵니다. |
getNamedRanges() | NamedRange[] | 이 스프레드시트에서 명명된 범위를 모두 가져옵니다. |
getNumSheets() | Integer | 이 스프레드시트의 시트 수를 반환합니다. |
getOwner() | User | 문서의 소유자 또는 null공유 드라이브에 있는 문서의 소유자를 반환합니다. |
getPredefinedSpreadsheetThemes() | SpreadsheetTheme[] | 사전 정의된 테마 목록을 반환합니다. |
getProtections(type) | Protection[] | 스프레드시트의 모든 보호된 범위 또는 시트를 나타내는 개체 배열을 가져옵니다. |
getRange(a1Notation) | Range | A1 표기법 또는 R1C1 표기법에 지정된 범위를 반환합니다. |
getRangeByName(name) | Range | 명명된 범위를 반환하거나, 지정된 이름의 범위를 찾을 수 없는 경우 null을 반환합니다. |
getRangeList(a1Notations) | RangeList | RangeListA1 표기법 또는 R1C1 표기법의 비어 있지 않은 목록으로 지정된 동일한 시트의 범위를 나타내는 컬렉션을 반환합니다 . |
getRecalculationInterval() | RecalculationInterval | 이 스프레드시트의 계산 간격을 반환합니다. |
getRowHeight(rowPosition) | Integer | 주어진 행의 높이를 픽셀 단위로 가져옵니다. |
getSelection() | Selection | 스프레드시트의 현재 Selection을 반환합니다 . |
getSheetByName(name) | Sheet | 지정된 이름의 시트를 반환합니다. |
getSheetId() | Integer | 이 개체가 나타내는 시트의 ID를 반환합니다. |
getSheetName() | String | 시트 이름을 반환합니다. |
getSheetValues(startRow, startColumn, numRows, numColumns) | Object[][] | 지정된 좌표에서 시작하여 이 범위에 대한 값의 직사각형 그리드를 반환합니다. |
getSheets() | Sheet[] | 이 스프레드시트의 모든 시트를 가져옵니다. |
getSpreadsheetLocale() | String | 스프레드시트 로케일을 가져옵니다. |
getSpreadsheetTheme() | SpreadsheetTheme | 스프레드시트의 현재 테마를 반환하거나 테마가 적용되지 않은 경우 null을 반환합니다. |
getSpreadsheetTimeZone() | String | 스프레드시트의 시간대를 가져옵니다. |
getUrl() | String | 지정된 스프레드시트의 URL을 반환합니다. |
getViewers() | User[] | 이 Spreadsheet에 대한 시청자 및 댓글 작성자 목록을 가져옵니다. |
hideColumn(column) | void | 지정된 범위의 열을 숨깁니다. |
hideRow(row) | void | 지정된 범위의 행을 숨깁니다. |
insertColumnAfter(afterPosition) | Sheet | 주어진 열 위치 뒤에 열을 삽입합니다. |
insertColumnBefore(beforePosition) | Sheet | 주어진 열 위치 앞에 열을 삽입합니다. |
insertColumnsAfter(afterPosition, howMany) | Sheet | 주어진 열 위치 뒤에 주어진 수의 열을 삽입합니다. |
insertColumnsBefore(beforePosition, howMany) | Sheet | 주어진 열 위치 앞에 여러 개의 열을 삽입합니다. |
insertDataSourceSheet(spec) | DataSourceSheet | 스프레드시트에 새 DataSourceSheet항목을 삽입 하고 데이터 실행을 시작합니다. |
insertImage(blobSource, column, row) | OverGridImage | Spreadsheet문서의 특정 행과 열에 이미지를 삽입합니다 . |
insertImage(blobSource, column, row, offsetX, offsetY) | OverGridImage | Spreadsheet문서의 특정 행과 열에 픽셀 오프셋을 사용하여 이미지를 삽입합니다 . |
insertImage(url, column, row) | OverGridImage | 문서의 특정 행과 열에 이미지를 삽입합니다. |
insertImage(url, column, row, offsetX, offsetY) | OverGridImage | 문서의 특정 행과 열에 픽셀 오프셋을 사용하여 이미지를 삽입합니다. |
insertRowAfter(afterPosition) | Sheet | 주어진 행 위치 뒤에 행을 삽입합니다. |
insertRowBefore(beforePosition) | Sheet | 주어진 행 위치 앞에 행을 삽입합니다. |
insertRowsAfter(afterPosition, howMany) | Sheet | 지정된 행 위치 뒤에 여러 행을 삽입합니다. |
insertRowsBefore(beforePosition, howMany) | Sheet | 지정된 행 위치 앞에 여러 행을 삽입합니다. |
insertSheet() | Sheet | 기본 시트 이름을 사용하여 스프레드시트에 새 시트를 삽입합니다. |
insertSheet(sheetIndex) | Sheet | 스프레드시트의 지정된 인덱스에 새 시트를 삽입합니다. |
insertSheet(sheetIndex, options) | Sheet | 스프레드시트의 지정된 인덱스에 새 시트를 삽입하고 선택적 고급 인수를 사용합니다. |
insertSheet(options) | Sheet | 기본 시트 이름과 선택적 고급 인수를 사용하여 스프레드시트에 새 시트를 삽입합니다. |
insertSheet(sheetName) | Sheet | 주어진 이름을 가진 새 시트를 스프레드시트에 삽입합니다. |
insertSheet(sheetName, sheetIndex) | Sheet | 주어진 색인에 주어진 이름을 가진 스프레드시트에 새 시트를 삽입합니다. |
insertSheet(sheetName, sheetIndex, options) | Sheet | 지정된 인덱스에 지정된 이름을 가진 새 시트를 스프레드시트에 삽입하고 선택적 고급 인수를 사용합니다. |
insertSheet(sheetName, options) | Sheet | 지정된 이름을 사용하여 스프레드시트에 새 시트를 삽입하고 선택적 고급 인수를 사용합니다. |
insertSheetWithDataSourceTable(spec) | Sheet | 스프레드시트에 새 시트를 삽입하고, DataSourceTable의 지정된 데이터 소스 사양으로 전체 시트에 걸쳐 생성한 후 데이터 실행을 시작합니다. |
isColumnHiddenByUser(columnPosition) | Boolean | 사용자가 해당 열을 숨겼는지 여부를 반환합니다. |
isIterativeCalculationEnabled() | Boolean | 이 스프레드시트에서 반복 계산이 활성화되었는지 여부를 반환합니다. |
isRowHiddenByFilter(rowPosition) | Boolean | 주어진 행이 필터(필터 보기 아님)에 의해 숨겨졌는지 여부를 반환합니다. |
isRowHiddenByUser(rowPosition) | Boolean | 사용자가 해당 행을 숨겼는지 여부를 반환합니다. |
moveActiveSheet(pos) | void | 활성 시트를 시트 목록의 지정된 위치로 이동합니다. |
moveChartToObjectSheet(chart) | Sheet | 새 SheetType.OBJECT타입의 시트를 만들고 제공된 차트를 해당 시트로 이동합니다. |
refreshAllDataSources() | void | 잘못된 데이터 소스 개체를 건너뛰고 지원되는 모든 데이터 소스와 연결된 데이터 소스 개체를 새로 고칩니다. |
removeEditor(emailAddress) | Spreadsheet | Spreadsheet의 편집자 목록에서 지정된 사용자를 제거합니다. |
removeEditor(user) | Spreadsheet | Spreadsheet의 편집자 목록에서 지정된 사용자를 제거합니다. |
removeMenu(name) | void | addMenu(name, subMenus)에 의해 추가된 메뉴를 제거합니다. |
removeNamedRange(name) | void | 주어진 이름을 가진 명명된 범위를 삭제합니다. |
removeViewer(emailAddress) | Spreadsheet | Spreadsheet의 뷰어 및 댓글 작성자 목록에서 지정된 사용자를 제거합니다. |
removeViewer(user) | Spreadsheet | Spreadsheet의 뷰어 및 댓글 작성자 목록에서 지정된 사용자를 제거합니다. |
rename(newName) | void | 문서의 이름을 바꿉니다. |
renameActiveSheet(newName) | void | 현재 활성 시트의 이름을 지정된 새 이름으로 바꿉니다. |
resetSpreadsheetTheme() | SpreadsheetTheme | 적용된 테마를 제거하고 스프레드시트에 기본 테마를 설정합니다. |
setActiveRange(range) | Range | 지정된 범위를 활성 시트의 active range로 설정하고 범위의 왼쪽 위 셀을 current cell로 설정합니다. |
setActiveRangeList(rangeList) | RangeList | 지정된 범위 목록을 활성 시트의 active ranges로 설정합니다. |
setActiveSelection(range) | Range | 이 시트의 활성 선택 영역을 설정합니다. |
setActiveSelection(a1Notation) | Range | A1 표기법 또는 R1C1 표기법에 지정된 대로 활성 선택을 설정합니다. |
setActiveSheet(sheet) | Sheet | 지정된 시트를 스프레드시트의 활성 시트로 설정합니다. |
setActiveSheet(sheet, restoreSelection) | Sheet | 지정된 시트를 스프레드시트의 활성 시트로 설정하고 해당 시트 내에서 가장 최근 선택 항목을 복원하는 옵션을 제공합니다. |
setColumnWidth(columnPosition, width) | Sheet | 주어진 열의 너비를 픽셀 단위로 설정합니다. |
setCurrentCell(cell) | Range | 지정된 셀을 current cell로 설정합니다. |
setFrozenColumns(columns) | void | 주어진 수의 열을 고정합니다. |
setFrozenRows(rows) | void | 지정된 수의 행을 고정합니다. |
setIterativeCalculationConvergenceThreshold(minThreshold) | Spreadsheet | 반복 계산을 위한 최소 임계값을 설정합니다. |
setIterativeCalculationEnabled(isEnabled) | Spreadsheet | 이 스프레드시트에서 반복 계산을 활성화할지 여부를 설정합니다. |
setMaxIterativeCalculationCycles(maxIterations) | Spreadsheet | 반복 계산 중에 수행해야 하는 최대 계산 반복 횟수를 설정합니다. |
setNamedRange(name, range) | void | 범위의 이름을 지정합니다. |
setRecalculationInterval(recalculationInterval) | Spreadsheet | 이 스프레드시트를 다시 계산해야 하는 빈도를 설정합니다. |
setRowHeight(rowPosition, height) | Sheet | 주어진 행의 행 높이를 픽셀 단위로 설정합니다. |
setSpreadsheetLocale(locale) | void | 스프레드시트 로케일을 설정합니다. |
setSpreadsheetTheme(theme) | SpreadsheetTheme | 스프레드시트에 테마를 설정합니다. |
setSpreadsheetTimeZone(timezone) | void | 스프레드시트의 시간대를 설정합니다. |
show(userInterface) | void | 사용자 브라우저 뷰포트 중앙에 있는 대화상자에 사용자 정의 사용자 인터페이스 구성요소를 표시합니다. |
sort(columnPosition) | Sheet | 시트를 열별로 오름차순으로 정렬합니다. |
sort(columnPosition, ascending) | Sheet | 시트를 열별로 정렬합니다. |
toast(msg) | void | 주어진 메시지와 함께 스프레드시트의 오른쪽 하단에 팝업 창을 표시합니다. |
toast(msg, title) | void | 지정된 메시지와 제목이 포함된 팝업 창을 스프레드시트 오른쪽 하단에 표시합니다. |
toast(msg, title, timeoutSeconds) | void | 특정 시간 동안 표시되는 지정된 제목과 메시지가 포함된 팝업 창을 스프레드시트의 오른쪽 하단에 표시합니다. |
unhideColumn(column) | void | 지정된 범위의 열을 숨김 해제합니다. |
unhideRow(row) | void | 지정된 범위의 행 숨기기를 해제합니다. |
updateMenu(name, subMenus) | void | addMenu(name, subMenus)에 의해 추가된 메뉴를 업데이트합니다. |
waitForAllDataExecutionsCompletion(timeoutInSeconds) | void | 스프레드시트의 현재 실행이 모두 완료될 때까지 기다렸다가 제공된 시간(초) 후에 시간 초과됩니다. |
3. 마무리
구글 앱 스크립트의 Spreadsheet 클래스의 기능을 정리해 보았습니다.
SpreadSheetApp 클래스보다 더 세밀한 작업이 가능하도록 많은 기능들이 있었습니다.
해당 기능들은 중 몇몇은 제 이전 포스팅들에서 어떻게 사용하는지 살펴보실 수 있습니다.
다음 포스팅에서는 구글 앱 스크립트의 Sheet 클래스의 기능을 정리해 보겠습니다.
답글 남기기