Class Selection

선택

활성 시트에서 현재 활성 선택에 액세스합니다. 선택은 사용자가 시트에서 강조 표시한 셀의 집합으로, 인접하지 않은 범위일 수 있습니다. 선택한 셀 중 하나는 사용자의 현재 포커스가 있는 현재 셀입니다. 현재 셀은 Google Sheets UI에서 더 어두운 테두리로 강조표시됩니다.

const activeSheet = SpreadsheetApp.getActiveSheet();
const rangeList = activeSheet.getRangeList(['A1:B4', 'D1:E4']);
rangeList.activate();

const selection = activeSheet.getSelection();
// Current Cell: D1
console.log(`Current Cell: ${selection.getCurrentCell().getA1Notation()}`);
// Active Range: D1:E4
console.log(`Active Range: ${selection.getActiveRange().getA1Notation()}`);
// Active Ranges: A1:B4, D1:E4
const ranges = selection.getActiveRangeList().getRanges();
for (let i = 0; i < ranges.length; i++) {
  console.log(`Active Ranges: ${ranges[i].getA1Notation()}`);
}
console.log(`Active Sheet: ${selection.getActiveSheet().getName()}`);

메서드

메서드반환 유형간략한 설명
getActiveRange()Range활성 시트에서 선택한 범위를 반환하거나 활성 범위가 없는 경우 null을 반환합니다.
getActiveRangeList()RangeList활성 시트의 활성 범위 목록을 반환하거나 활성 범위가 없는 경우 null를 반환합니다.
getActiveSheet()Sheet스프레드시트에서 활성 시트를 반환합니다.
getCurrentCell()Range활성 범위 중 하나에서 선택된 현재 (강조 표시된) 셀을 반환하거나 현재 셀이 없는 경우 null을 반환합니다.
getNextDataRange(direction)Rangecurrent cellactive range에서 시작하여 지정된 방향으로 이동하면서 현재 셀을 계속 덮으면서 next data cell를 덮을 수 있도록 범위의 적절한 가장자리가 이동된 조정된 범위를 반환합니다.

자세한 문서

getActiveRange()

활성 시트에서 선택한 범위를 반환하거나 활성 범위가 없는 경우 null을 반환합니다. 여러 범위가 선택된 경우 이 메서드는 마지막으로 선택한 범위만 반환합니다.

const selection = SpreadsheetApp.getActiveSpreadsheet().getSelection();
const activeRange = selection.getActiveRange();

리턴

Range - 활성 범위입니다.

승인

이 메서드를 사용하는 스크립트에는 다음 범위 중 하나 이상의 승인이 필요합니다.

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

getActiveRangeList()

활성 시트의 활성 범위 목록을 반환하거나 활성 범위가 없는 경우 null를 반환합니다.

선택된 범위가 하나인 경우 getActiveRange() 호출처럼 작동합니다.

const sheet = SpreadsheetApp.getActiveSheet();
// Returns the list of active ranges.
const activeRangeList = sheet.getActiveRangeList();

리턴

RangeList: 활성 범위 목록입니다.

승인

이 메서드를 사용하는 스크립트에는 다음 범위 중 하나 이상의 승인이 필요합니다.

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

getActiveSheet()

스프레드시트에서 활성 시트를 반환합니다.

const selection = SpreadsheetApp.getActiveSpreadsheet().getSelection();
const activeSheet = selection.getActiveSheet();

리턴

Sheet: 스프레드시트의 활성 시트입니다.

승인

이 메서드를 사용하는 스크립트에는 다음 범위 중 하나 이상의 승인이 필요합니다.

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

getCurrentCell()

활성 범위 중 하나에서 선택된 현재 (강조 표시된) 셀을 반환하거나 현재 셀이 없는 경우 null을 반환합니다.

const selection = SpreadsheetApp.getActiveSpreadsheet().getSelection();
// Returns the current highlighted cell in the one of the active ranges.
const currentCell = selection.getCurrentCell();

리턴

Range: 현재 셀입니다.

승인

이 메서드를 사용하는 스크립트에는 다음 범위 중 하나 이상의 승인이 필요합니다.

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

getNextDataRange(direction)

current cellactive range에서 시작하여 지정된 방향으로 이동하면서 현재 셀을 계속 덮으면서 next data cell를 덮을 수 있도록 범위의 적절한 가장자리가 이동된 조정된 범위를 반환합니다. 활성 범위가 방향의 dimension를 따라 제한되지 않으면 원래 활성 범위가 반환됩니다. 현재 셀이나 활성 범위가 없으면 null이 반환됩니다. 이는 편집기에서 범위를 선택하고 Ctrl+Shift+[arrow key]를 누르는 것과 같습니다.

// Assume the active spreadsheet is blank.
const ss = SpreadsheetApp.getActiveSpreadsheet();
const sheet = ss.getSheets()[0];

// Makes C3 the current cell and C3:E5 the active range.
sheet.getRange('C3:E5').activate();
// Logs 'C1:E3'
console.log(
    SpreadsheetApp.getSelection()
        .getNextDataRange(SpreadsheetApp.Direction.UP)
        .getA1Notation(),
);

매개변수

이름유형설명
directionDirection다음 데이터 리전 가장자리 셀을 찾을 방향입니다.

리턴

Range: 데이터 셀을 포함하는 조정된 범위 또는 선택사항이 없는 경우 null입니다.

승인

이 메서드를 사용하는 스크립트에는 다음 범위 중 하나 이상의 승인이 필요합니다.

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