こういうシートがあって
kanaの列でデータが入っていない範囲を取得したい
コピペ用データ
コード.gs
function getLastBlank() {
var sheet = SpreadsheetApp.getActiveSheet();
var lastRow = sheet.getLastRow();
var startRow = 2;
var col = 2;
var values = sheet.getRange(startRow, col, lastRow, 1).getValues();
Logger.log(values);
var lastBlank = 0;
for(var i = 0; i < values.length; i++) {
var value = values[i][0];
if(value !== '') {
lastBlank = i + 1;
break;
}
}
Logger.log(lastBlank);
return lastBlank;
}
|
意訳この機能がやること 今開いているシートを取得する データが入っている最終行を取得する 開始行を指定する 対象の列番号を指定する 対象の列で開始行から最終行までの値を取得して ログに出す 最後の空白行は0にしておく 値の数だけ繰り返す 値を1つずつ取得して もし空でなければ 最後の空白行は配列の要素番号+1 配列は0始まりでシートは1始まりなので+1 for文から抜ける それをログに出して そして返す |
実行結果
getLastBlankを実行するとこのようなログが出ます
kanaの列で値が入っていない範囲の最終行は4行目

