セル範囲を操作する

【GAS】スプレッドシートで指定した行・列のセル範囲を取得する

GASでスプレッドシートで指定した行・列のセル範囲を取得するには「getRange(row, column)」を利用する。

getRange(row, column)

指定された座標の左上のセルの範囲を返します。

https://developers.google.com/apps-script/reference/spreadsheet/sheet?hl=en#getrangerow,-column

スプレッドシートで指定した行・列のセル範囲を取得するGAS実行の様子

getRange(row, column)メソッドを利用して、スプレッドシートで指定した行・列のセル範囲を取得するGASを実行してみました。

getRangerow-column-yes
getRangerow-columnを実行した場合

getRange(row, column)メソッドの、()の指定方法は

  • rowは行数
  • columnは列数

を指定することで任意のセルを選択することができます。(どちらもNumber型です)

getActiveRange()メソッドでスプレッドシートのアクティブシートの選択された範囲を取得する場合は、以下記事を御覧ください。

参照記事:【GAS】スプレッドシートの選択された範囲を取得する

スプレッドシートで指定した行・列のセル範囲を取得するGAS

function rangeselect(){
  //SpreadsheetAppを起動
  var ss = SpreadsheetApp.getActiveSpreadsheet();
  //0番目のシートを取得
  var sht = ss.getSheets()[0];
  //YES/NOを設定
 var result = Browser.msgBox("座標を指定したセルを取得しますか?",Browser.Buttons.YES_NO);

 //ーーーーー条件分岐ーーーーー
  //YESだったら
   if(result == "yes"){
     //任意の行数を入力
      var rw = Browser.inputBox("任意の行数を入力してください");
      //任意の列数を入力
      var cl = Browser.inputBox("任意の列数を入力してください");
      //■getRangeで任意のセル範囲を選択しgetA1NoattionでA1形式で取得
      var rng = sht.getRange(rw,cl).getA1Notation();
        //任意のセル範囲の背景を黄色にして選択状態に
        sht.getRange(rng)
        .setBackground("yellow")
        .activate();
      //メッセージで選択した旨を掲載
      Browser.msgBox("選択したセルは「"+rng+"」です");
    } else {
      //メッセージで選択しなかった旨を掲載
      Browser.msgBox("このスプレッドシートのファイル名は取得しませんでした。")
    }
 //ーーーーーここまでーーーーー
}

getRange(row, column)のパラメーター

名前タイプ説明
rowsInteger返すセルの行インデックス。行のインデックス付けは1から始まります。
columnInteger返すセルの列インデックス。列のインデックス付けは1から始まります。
getRange(row, column)のパラメーター

getRange(row, column)の戻り値

Range—このセルのみを含む範囲。

スプレッドシートで指定した行・列のセル範囲を取得するまとめ

GAS×スプレッドシートで指定した行・列のセル範囲を取得するならgetRange(row, column)メソッドを利用しましょう。

関連記事:【GAS】スプレッドシートで指定範囲をアクティブシートの選択セルに設定する

関連記事:【GAS】スプレッドシートでアクティブな範囲のリストを取得する

関連記事:【GAS】スプレッドシートの選択された範囲を取得する

関連記事:【GAS】スプレッドシートのアクティブなセルを取得するgetCurrentCell編

関連記事:【GAS】スプレッドシートのアクティブなセルを取得する

-セル範囲を操作する