GASでスプレッドシートで指定した行・列・最終行までのセル範囲を取得するには「getRange(row, column, numRows)
」を利用する。
getRange(row, column, numRows)
指定された座標の左上のセルと指定された行数の範囲を返します。
https://developers.google.com/apps-script/reference/spreadsheet/sheet?hl=en#getrangerow,-column,-numrows
スプレッドシートで指定した行・列・最終行までのセル範囲を取得するGAS実行の様子
getRange(row, column, numRows)メソッドを利用して、スプレッドシートで指定した行・列・最終行までのセル範囲を取得するGASを実行してみました。
getRange(row, column, numRows)メソッドの()の値は、
- rowは始点となる行数
- columnは任意の列数
- numRowsは任意の最終行数
を指定することでセル範囲を取得・選択することが可能です(全てNumber型で指定します)
getRange(row, column)
メソッドでスプレッドシートの指定した行・列のセル範囲を取得する場合は、以下記事を御覧ください。
参照記事:【GAS】スプレッドシートで指定した行・列のセル範囲を取得する
スプレッドシートで指定した行・列・最終行までのセル範囲を取得するGAS
function rngselect(){
//SpreadsheetAppを起動
var ss = SpreadsheetApp.getActiveSpreadsheet();
//0番目のシートを取得
var sht = ss.getSheets()[0];
//YESNOを選択
var yesno = Browser.msgBox("任意のセル範囲を選択しますか?",Browser.Buttons.YES_NO);
//ーーーーー条件分岐ーーーーー
//YESだったら
if( yesno == "yes"){
//始点のセル行数を入力
var rw = Browser.inputBox("始点の行数を入力");
//始点のセル列数を入力
var cl = Browser.inputBox("始点の列数を入力");
//最終行数を入力
var lastrw = Browser.inputBox("最終行数を入力");
//■getRangeで任意の行・列・最終行数のセル範囲を選択する
var rng = sht.getRange(rw,cl,lastrw);
//getA1Notationで任意のセル範囲をA1形式で取得
var rngval = rng.getA1Notation();
//任意のセル範囲背景を黄色にして選択状態に
rng.setBackground("yellow")
.activate();
Browser.msgBox("任意のセル範囲「"+rngval+"」を選択しました");
}else {
Browser.msgBox("セル範囲の取得をキャンセルしました");
}
//ーーーーーここまでーーーーー
}
getRange(row, column, numRows)のパラメーター
名前 | タイプ | 説明 |
---|---|---|
rows | Integer | 範囲の開始行インデックス。行のインデックス付けは1から始まります。 |
column | Integer | 範囲の列インデックス。列のインデックス付けは1から始まります。 |
numRows | Integer | 返される行数。 |
getRange(row, column, numRows)の戻り値
Range—指定された行数のデータの単一列を含む範囲。
スプレッドシートで指定した行・列・最終行までのセル範囲を取得するまとめ
GAS×スプレッドシートで指定した行・列・最終行までのセル範囲を取得するならgetRange(row, column, numRows)
メソッドを利用しましょう。
関連記事:【GAS】スプレッドシートで指定範囲をアクティブシートの選択セルに設定する
関連記事:【GAS】スプレッドシートでアクティブな範囲のリストを取得する
関連記事:【GAS】スプレッドシートの選択された範囲を取得する