Class Selection

Seleção

Acessar a seleção ativa atual na página ativa. Uma seleção é o conjunto de células que o usuário destacado na página, que podem ser intervalos não adjacentes. Uma célula na seleção é a célula atual, onde está o foco atual do usuário. A célula atual é destacada com um borda mais escura na interface do Planilhas Google.

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

var 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
var ranges =  selection.getActiveRangeList().getRanges();
for (var i = 0; i < ranges.length; i++) {
  console.log('Active Ranges: ' + ranges[i].getA1Notation());
}
console.log('Active Sheet: ' + selection.getActiveSheet().getName());

Métodos

MétodoTipo de retornoBreve descrição
getActiveRange()RangeRetorna o intervalo selecionado na página ativa ou null quando não há um intervalo ativo.
getActiveRangeList()RangeListRetorna a lista de intervalos ativos na página ativa ou null se não houver intervalos ativos intervalos.
getActiveSheet()SheetRetorna a página ativa na planilha.
getCurrentCell()RangeRetorna a célula atual (destacada) selecionada em um dos intervalos ativos ou null se não houver uma célula atual.
getNextDataRange(direction)RangeA partir de current cell e active range e se mover na direção especificada, retorna um intervalo ajustado em que a aresta apropriada do mudou para cobrir a next data cell, mas ainda cobrindo a célula atual.

Documentação detalhada

getActiveRange()

Retorna o intervalo selecionado na página ativa ou null quando não há um intervalo ativo. Se vários intervalos são selecionados este método retorna apenas o último intervalo selecionado.

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

Retornar

Range: o intervalo ativo.

Autorização

Os scripts que usam esse método precisam de autorização com um ou mais dos seguintes escopos:

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

getActiveRangeList()

Retorna a lista de intervalos ativos na página ativa ou null se não houver intervalos ativos intervalos.

Se um único intervalo for selecionado, a chamada getActiveRange() vai se comportar como um todo.

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

Retornar

RangeList: a lista de intervalos ativos.

Autorização

Os scripts que usam esse método precisam de autorização com um ou mais dos seguintes escopos:

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

getActiveSheet()

Retorna a página ativa na planilha.

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

Retornar

Sheet: a página ativa na planilha.

Autorização

Os scripts que usam esse método precisam de autorização com um ou mais dos seguintes escopos:

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

getCurrentCell()

Retorna a célula atual (destacada) selecionada em um dos intervalos ativos ou null se não houver uma célula atual.

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

Retornar

Range: a célula atual.

Autorização

Os scripts que usam esse método precisam de autorização com um ou mais dos seguintes escopos:

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

getNextDataRange(direction)

A partir de current cell e active range e se mover na direção especificada, retorna um intervalo ajustado em que a aresta apropriada do mudou para cobrir next data cell, enquanto ainda cobrindo a célula atual. Se o intervalo ativo for ilimitado ao longo do dimension da direção, o intervalo ativo original será retornado. Se não houver uma célula atual ou intervalo ativo, null será retornado. Isso equivale a selecionar um intervalo na e clicando em Ctrl+Shift+[arrow key].

// Assume the active spreadsheet is blank.
var ss = SpreadsheetApp.getActiveSpreadsheet();
var 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());

Parâmetros

NomeTipoDescrição
directionDirectionA direção para encontrar a próxima célula de borda da região de dados.

Retornar

Range: o intervalo ajustado que inclui a célula de dados, ou null se não houver

Autorização

Os scripts que usam esse método precisam de autorização com um ou mais dos seguintes escopos:

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