GASでスプレッドシートで指定したセルをアクティブ範囲として設定するにはactivateAsCurrentCell()
メソッドを使う。
activateAsCurrentCell()
指定したセルをcurrent cellとして設定します。
指定されたセルが既存の範囲に存在する場合、その範囲は、セルを現在のセルとしてアクティブ範囲になります。
指定されたセルが既存の範囲に存在しない場合、既存の選択が削除され、セルが現在のセルとアクティブな範囲になります。
https://developers.google.com/apps-script/reference/spreadsheet/range#activateascurrentcell
スプレッドシートで指定したセルをアクティブ範囲として設定するGASの実行
スプレッドシートで指定したセルをアクティブ範囲として設定するGAS
function myFunction() {
//シート0を取得
var sheet = SpreadsheetApp.getActiveSpreadsheet().getSheets()[0];
//セルA5をGETしてアクティブに
var range = sheet.getRange('A5');
range.activate();
//変数にselectionを格納
var selection = sheet.getSelection();
//A5をアクティブセルとして設定
var currentCell = selection.getCurrentCell();
//選択したセルの背景色をシルバーにする
currentCell.setBackground('#C0c0c0');
}
まとめ
意外と別の操作を行う前にactivateAsCurrentCell()
メソッドを使うとスムーズに動作する。