アクティブ シートで現在アクティブな選択内容にアクセスします。選択範囲とは、ユーザーがシート内でハイライト表示したセルのセットです。隣接しない範囲でもかまいません。選択範囲内のセルの 1 つが、ユーザーが現在フォーカスしている現在のセルです。Google スプレッドシートの UI では、現在のセルが濃い枠線でハイライト表示されます。
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());
Methods
メソッド | 戻り値の型 | 概要 |
---|---|---|
getActiveRange() | Range | アクティブ シート内の選択した範囲を返します。アクティブ範囲がない場合は null を返します。 |
getActiveRangeList() | RangeList | アクティブ シート内のアクティブ範囲のリストを返します。アクティブな範囲がない場合は null を返します。 |
getActiveSheet() | Sheet | スプレッドシート内のアクティブなシートを返します。 |
getCurrentCell() | Range | 有効な範囲のいずれかで選択された現在の(ハイライト表示された)セルを返します。現在のセルがない場合は null を返します。 |
getNextDataRange(direction) | Range | current cell と active 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 cell
と active 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());
パラメータ
名前 | 型 | 説明 |
---|---|---|
direction | Direction | 次のデータ領域のエッジセルを検出する方向。 |
リターン
Range
- データセルを含む調整範囲。選択がない場合は null
。
承認
この方法を使用するスクリプトには、次の 1 つ以上のスコープによる承認が必要です。
-
https://www.googleapis.com/auth/spreadsheets.currentonly
-
https://www.googleapis.com/auth/spreadsheets