【GAS】空白データではない最終行を取得する

var sheet = SpreadsheetApp.getActiveSheet();
var lastRow = sheet.getLastRow();

とすればスプレッドシートの最終行の数字が取得できます。しかし、データが何もない空白の行が下に続いている場合でもその最後の行を取得してしまいます。 データが入っている部分の最終行を取得するためには、特定のカラムについて全てのデータを配列として取得して、空白の要素を取り除いた配列の長さを取得する方法があります。

const FValues = sheet.getRange('F:F').getValues();  //F列の値を全て取得
const LastRow = FValues.filter(String).length;  //空白の要素を除いた長さを取得
Logger.log(LastRow);

1行目がデータのラベルになっていて、行数に含めたくない場合はgetRangeの指定範囲を変更して対応できます。