Class Selection

Wybór

Dostęp do bieżącego aktywnego zaznaczenia w aktywnym arkuszu. Zaznaczenie to zbiór komórek wyróżnionych przez użytkownika w arkuszu, które mogą być nieprzylegającymi do siebie zakresami. Jedna z komórek w zaznaczeniu to bieżąca komórka, na której skupia się obecnie użytkownik. Bieżąca komórka jest wyróżniona ciemniejszą ramką w interfejsie Arkuszy Google.

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

Metody

MetodaZwracany typKrótki opis
getActiveRange()Range|nullZwraca wybrany zakres w aktywnym arkuszu lub null, jeśli nie ma aktywnego zakresu.
getActiveRangeList()RangeList|nullZwraca listę aktywnych zakresów w aktywnym arkuszu lub null, jeśli nie ma aktywnych zakresów.
getActiveSheet()SheetZwraca aktywny arkusz w arkuszu kalkulacyjnym.
getCurrentCell()Range|nullZwraca bieżącą (wyróżnioną) komórkę wybraną w jednym z aktywnych zakresów lub null, jeśli nie ma bieżącej komórki.
getNextDataRange(direction)Range|nullZaczynając od komórek current cellactive range i poruszając się w danym kierunku, zwraca skorygowany zakres, w którym odpowiednia krawędź zakresu została przesunięta tak, aby obejmowała komórkę next data cell, a jednocześnie nadal obejmowała bieżącą komórkę.

Szczegółowa dokumentacja

getActiveRange()

Zwraca wybrany zakres w aktywnym arkuszu lub null, jeśli nie ma aktywnego zakresu. Jeśli wybrano wiele zakresów, ta metoda zwraca tylko ostatni z nich.

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

Powrót

Range|null – aktywny zakres.

Autoryzacja

Skrypty korzystające z tej metody wymagają autoryzacji z użyciem co najmniej jednego z tych zakresów:

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

getActiveRangeList()

Zwraca listę aktywnych zakresów w aktywnym arkuszu lub null, jeśli nie ma aktywnych zakresów.

Jeśli wybrano pojedynczy zakres, działa to jak wywołanie getActiveRange().

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

Powrót

RangeList|null – lista aktywnych zakresów.

Autoryzacja

Skrypty korzystające z tej metody wymagają autoryzacji z użyciem co najmniej jednego z tych zakresów:

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

getActiveSheet()

Zwraca aktywny arkusz w arkuszu kalkulacyjnym.

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

Powrót

Sheet – aktywny arkusz w arkuszu kalkulacyjnym.

Autoryzacja

Skrypty korzystające z tej metody wymagają autoryzacji z użyciem co najmniej jednego z tych zakresów:

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

getCurrentCell()

Zwraca bieżącą (wyróżnioną) komórkę wybraną w jednym z aktywnych zakresów lub null, jeśli nie ma bieżącej komórki.

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

Powrót

Range|null – bieżąca komórka.

Autoryzacja

Skrypty korzystające z tej metody wymagają autoryzacji z użyciem co najmniej jednego z tych zakresów:

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

getNextDataRange(direction)

Zaczynając od komórek current cellactive range i poruszając się w danym kierunku, zwraca skorygowany zakres, w którym odpowiednia krawędź zakresu została przesunięta tak, aby obejmowała komórkę next data cell, a jednocześnie nadal obejmowała bieżącą komórkę. Jeśli aktywny zakres jest nieograniczony w kierunku dimension, zwracany jest pierwotny aktywny zakres. Jeśli nie ma bieżącej komórki ani aktywnego zakresu, zwracana jest wartość null. Odpowiada to wybraniu zakresu w edytorze i naciśnięciu klawisza 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(),
);

Parametry

NazwaTypOpis
directionDirectionKierunek, w którym należy szukać następnej komórki na krawędzi regionu danych.

Powrót

Range|null – dostosowany zakres, który obejmuje komórkę danych, lub null, jeśli nie ma zaznaczenia.

Autoryzacja

Skrypty korzystające z tej metody wymagają autoryzacji z użyciem co najmniej jednego z tych zakresów:

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