Class Selection

Sélection

Accédez à la sélection active actuelle dans la feuille active. Une sélection est l'ensemble des cellules que l'utilisateur a mises en surbrillance dans la feuille. Il peut s'agir de plages non adjacentes. Une cellule de la sélection est la cellule actuelle, sur laquelle l'utilisateur est actuellement concentré. La cellule actuelle est mise en évidence par une bordure plus foncée dans l'interface utilisateur de Google Sheets.

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()}`);

Méthodes

MéthodeType renvoyéBrève description
getActiveRange()Range|nullRenvoie la plage sélectionnée dans la feuille active ou null s'il n'y a pas de plage active.
getActiveRangeList()RangeList|nullRenvoie la liste des plages actives dans la feuille active ou null s'il n'y a pas de plages actives.
getActiveSheet()SheetRenvoie la feuille active de la feuille de calcul.
getCurrentCell()Range|nullRenvoie la cellule actuelle (mise en surbrillance) sélectionnée dans l'une des plages actives ou null s'il n'y a pas de cellule actuelle.
getNextDataRange(direction)Range|nullEn partant de current cell et active range et en se déplaçant dans la direction indiquée, renvoie une plage ajustée où le bord approprié de la plage a été déplacé pour couvrir next data cell tout en couvrant toujours la cellule actuelle.

Documentation détaillée

getActiveRange()

Renvoie la plage sélectionnée dans la feuille active ou null s'il n'y a pas de plage active. Si plusieurs plages sont sélectionnées, cette méthode ne renvoie que la dernière plage sélectionnée.

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

Renvois

Range|null : plage active.

Autorisation

Les scripts qui utilisent cette méthode nécessitent une autorisation avec un ou plusieurs des scopes suivants :

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

getActiveRangeList()

Renvoie la liste des plages actives dans la feuille active ou null s'il n'y a pas de plages actives.

Si une seule plage est sélectionnée, cela se comporte comme un appel getActiveRange().

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

Renvois

RangeList|null : liste des plages actives.

Autorisation

Les scripts qui utilisent cette méthode nécessitent une autorisation avec un ou plusieurs des scopes suivants :

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

getActiveSheet()

Renvoie la feuille active de la feuille de calcul.

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

Renvois

Sheet : feuille active de la feuille de calcul.

Autorisation

Les scripts qui utilisent cette méthode nécessitent une autorisation avec un ou plusieurs des scopes suivants :

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

getCurrentCell()

Renvoie la cellule actuelle (mise en surbrillance) sélectionnée dans l'une des plages actives ou null s'il n'y a pas de cellule actuelle.

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

Renvois

Range|null : cellule actuelle.

Autorisation

Les scripts qui utilisent cette méthode nécessitent une autorisation avec un ou plusieurs des scopes suivants :

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

getNextDataRange(direction)

En partant de current cell et active range et en se déplaçant dans la direction indiquée, renvoie une plage ajustée où le bord approprié de la plage a été déplacé pour couvrir next data cell tout en couvrant toujours la cellule actuelle. Si la plage active n'est pas limitée le long de la dimension de la direction, la plage active d'origine est renvoyée. Si aucune cellule ni aucune plage active n'est définie, null est renvoyé. Cela équivaut à sélectionner une plage dans l'éditeur et à appuyer sur 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(),
);

Paramètres

NomTypeDescription
directionDirectionDirection dans laquelle trouver la cellule de bord de la prochaine région de données.

Renvois

Range|null : plage ajustée incluant la cellule de données, ou null si aucune sélection n'est effectuée.

Autorisation

Les scripts qui utilisent cette méthode nécessitent une autorisation avec un ou plusieurs des scopes suivants :

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