GAS入門 Google Apps Script

【5分で解決】GASでスプレッドシートの最終行と最終列を取得

お仕事おつにゃッス🐈

文系未経験から社内SEになった、あっきょ(@daily_code_JP)です!

スプレッドシートで膨大なリストから最後の行と列を探すのは面倒くさいですよね?

この記事ではそのお悩みを、コピペOKのGoogle Apps Scriptのコードで解決します。

あっきょ
この記事は以下で悩んでいる人におすすめ!

  • 1クリックで簡単に最終行と列を知りたい
  • プログラムを組んで、リストの管理の手間と時間を省きたい
  • プログラミングでJavaScriptを学んだけど、何を作っていいかわからない

誰でも無料で簡単にできますので、お気軽に学んでいきましょう!

最終行と最終列を取得するイメージ

GASでスプレッドシートのシートの最終行と最終列を取得するイメージ

シート内の最終行と最終列を番号で取得します。

この記事では、GASでコードを組む場合には必須になる2つのメソッドを紹介します。

たった1行で簡単に番号を出力できるので、lengthを使った煩わしいコードを書く必要がなくて非常に便利です。

最終行と最終列を取得する準備

Google Apps Script で最終行と最終列の番号を得る準備をします。必要なファイルは1つです。

必要なファイル

  • Google スプレッドシート  ・・・ シートの作成 & サンプルコードの貼り付け

スプレッドシートの作成

最終行と最終列を取得するGoogle スプレッドシートを作成していきます。

練習が必要ない場合は読み飛ばして、関数の解説に移動しましょう!

この記事ではシートに「名前」、「性別」、「年齢」、「その他」の計4項目を作成し、データを19名分登録します。

スプレッドシートの設定は以上です。

GASでスプレッドシートの最終行と最終列を出力する準備

サンプルコードを貼り付ける場所

サンプルコードはGoogle スプレッドシートにコピペします。

上バーの「拡張機能」の中にある「Apps Script」をクリック。ここにコードを書きます。

GASをスプレッドシートに記入する際の「Apps Script」の表示

最終行と最終列を取得するメソッドとコード

Google Apps Scriptでシートの最終行と最終列を取得するコードの解説をします。

getLastRow() | シートの最終行を取得

スプレッドシートのセルの最終行の番号を取得するgetLastRowメソッドの説明

指定したシート内の空白ではないセルの最終行の番号を取得します。

引数は必要ありません

getLastColumn() | シートの最終列を取得

スプレッドシートのセルの最終列の番号を取得するgetLastColumnメソッドの説明

指定したシート内の空白ではないセルの最終列の番号を取得します。

引数は必要ありません

getLastColumnメソッドは最終列を番号で取得し、A列なら1でB列なら2を返します。

最終行と最終列の番号を取得するサンプルコード

ソースコード全体です。コピペして動作を確認してみましょう。この数行のコードだけで、空白ではないセルの最終行と最終列の番号をそれぞれ取得できます。

function getLastNum() {
 const sheet = SpreadsheetApp.getActiveSheet();
 const lastRow = sheet.getLastRow(); //最終行の番号を取得
 const lastCol = sheet.getLastColumn(); //最終列の番号を取得

 Logger.log("最終行:"+lastRow+" 最終列:"+lastCol)

}

最終番号を取得するテスト

実際にコードを動かして、最終番号を取得します。

Apps Scriptの上バーの文字が「getLast」になっていたら、「実行」を押します。

GASで最終行と最終列の番号を出力する準備

「このアプリはGoogleで確認されていません」と表示される場合はこちら

【3分で解決】GASの「このアプリはGoogleで確認されていません」を許可する方法

続きを見る

実行ログを確認します。シートの最終行と最終列の取得に成功しています。

GASでスプレッドシートの最終行と最終列を出力した結果

シートを見ると空白ではない最終行が20番目で最終列は4番目になります。

解説は以上です。

GASでスプレッドシートの最終行と最終列を出力した結果の確認

番号をうまく取得できない時の対処法

紹介したメソッドには注意することが1つあります。

作成したリスト外に値が1つでも埋まっていると、その番号を取得することです。

例えば、シート内のA24とF1に「テスト」という文字をそれぞれ入力します。

GASでスプレッドシートの最終行と最終列の出力がうまくいかないシートの例

結果を「最終行:20 最終列:4」と出力するはずが、リスト外のセルに値が入っているので番号をずらして表示します。

その場合、リスト外に値が埋まっているセルの値を削除すると解決できます。

GASでスプレッドシートの最終行と最終列の出力がうまくいかない結果

おわりに | さらに業務を効率化するには?

以上、Google Apps Script で最終行と最終列を取得する方法でした。

そのままコピペして日常業務で使いやすいように改修したり、プログラミングの練習や動作確認用に使ってみましょう。

GASでさらに業務効率化したい場合、参考書やプログラミングスクールを使うとあなた自身でアプリを作るスキルが身に付きます

プログラミング未経験者にもわかりやすく解説しています。

プログラミングスクールは82社を分析して5つ厳選してるッスよ!
あっきょ

次回の記事もご期待ください!

-GAS入門, Google Apps Script
-, , , , , , , , , , , , , , , , , , , ,