Class Selection

選択

アクティブ シートで現在アクティブな選択範囲にアクセスします。選択とは、ユーザーが選択したセルの シート内でハイライト表示されます。隣接しない範囲にすることもできます。選択範囲の 1 つのセルが、 現在のセル: ユーザーが現在フォーカスしているセル。現在のセルは 濃い枠線を適用しました

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

メソッド

メソッド戻り値の型概要
getActiveRange()Rangeアクティブ シートで選択した範囲を返します。アクティブ範囲がない場合は null を返します。
getActiveRangeList()RangeListアクティブ シート内のアクティブな範囲のリストを返します。アクティブなものがない場合は null を返します。 あります。
getActiveSheet()Sheetスプレッドシート内のアクティブなシートを返します。
getCurrentCell()Range有効な範囲のいずれかで選択されている現在の(ハイライト表示された)セルを返します。現在のセルがない場合は null を返します。
getNextDataRange(direction)Rangecurrent cellactive rangeから 指定された方向に移動すると、 next data cell をカバーするように範囲が移動されましたが、 現在のセルを覆います。

詳細なドキュメント

getActiveRange()

アクティブ シートで選択した範囲を返します。アクティブ範囲がない場合は null を返します。条件 複数の範囲が選択されている場合、このメソッドでは、最後に選択された範囲のみが返されます。

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

戻る

Range - 有効範囲。

承認

このメソッドを使用するスクリプトには、次のスコープの 1 つ以上を使用した承認が必要です。

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

getActiveRangeList()

アクティブ シート内のアクティブな範囲のリストを返します。アクティブなものがない場合は null を返します。 あります。

範囲が 1 つ選択されている場合、これは getActiveRange() 呼び出しとして動作します。

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

戻る

RangeList - アクティブな範囲のリスト。

承認

このメソッドを使用するスクリプトには、次のスコープの 1 つ以上を使用した承認が必要です。

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

getActiveSheet()

スプレッドシート内のアクティブなシートを返します。

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

戻る

Sheet - スプレッドシート内のアクティブなシート。

承認

このメソッドを使用するスクリプトには、次のスコープの 1 つ以上を使用した承認が必要です。

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

getCurrentCell()

有効な範囲のいずれかで選択されている現在の(ハイライト表示された)セルを返します。現在のセルがない場合は null を返します。

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

戻る

Range - 現在のセル。

承認

このメソッドを使用するスクリプトには、次のスコープの 1 つ以上を使用した承認が必要です。

  • 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.
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());

パラメータ

名前説明
directionDirectionデータ領域の次のエッジセルを検索する方向。

戻る

Range - データセルを含む調整範囲。データセルがない場合は null 選択します。

承認

このメソッドを使用するスクリプトには、次のスコープの 1 つ以上を使用した承認が必要です。

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