【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の指定範囲を変更して対応できます。

ハックノートをフォローして
最新情報をチェックしよう

AWS構築サービスの全てをまとめた資料を公開中

ハックノート(TOWN株式会社)では、AWSの導入や構築支援を行っています。AWS導入メニューやサービス詳細、構成例や費用を掲載した資料をダウンロードできます。

AWSの新規導入やAWSへの移行を検討の際は、ぜひご参考ください。


APNコンサルティングパートナー

TOWN株式会社はAmazon公認コンサルティングパートナーです。