記事検索

検索ワードを入力してください。
Sky Tech Blog
【VBA】最終行と​最終列を​簡単に​取得する​方​法

【VBA】最終行と​最終列を​簡単に​取得する​方​法

Excel VBAを使って最終行と最終列を簡単に取得する方法についての説明です。これにより、データ範囲を動的に扱い、効率的なマクロを作成することができます。具体的なコード例とその解説も含まれています。

今回は、Excel VBAを使って最終行と最終列を簡単に取得する方法についてご紹介します。 Excel VBAでデータを扱う際、最終行や最終列を取得することは非常に重要です。
これにより、データの範囲を動的に扱うことができ、効率的なマクロを作成することができます。

最終行・​最終列を​取得すると​できる​こと

以下は、最終行と最終列を取得することで実現できる便利な処理の例です。

  • 常に最新のデータ範囲を対象に処理を行うことができます。
  • 最終行を取得してその次の行に新しいデータを追加することができます。
  • データの範囲を自動的に設定し、集計処理を行うことができます。
  • 最終行や最終列を取得して特定の範囲のデータをクリアできます。
  • グラフのデータ範囲を動的に更新することができます。

最終行を​取得する​方​法

最終行を取得するためには、以下のようなコードを使用します。
このコードは、指定したシートの最終行を取得します。

Function GetLastRow() As Long

  ' シートを指定
    Dim ws As Worksheet: Set ws = ThisWorkbook.Sheets("Sheet1") 

  ' 最終行を取得
    Dim lastRow As Long:lastRow = ws.Cells(ws.Rows.Count, "A").End(xlUp).Row 
    
  ' 結果を表示
    MsgBox "最終行は " & lastRow & " 行目です。"   

  GetLastRow = lastRow 

End Function  

解説

ws.Rows.Count は総行数を返し、
End(xlUp).Rowは最終行から上方向に向かって最初にデータが入力されているセルの行番号を返します。
※シートで「Ctrl + ↑」を押したときと同じ動作です。

最終列を​取得する​方​法

次に、最終列を取得する方法です。以下のコードを使用します。

Function GetLastColumn() As Long

  ' シートを指定
    Dim ws As Worksheet: Set ws = ThisWorkbook.Sheets("Sheet1")  

  ' 最終列を取得
    Dim lastColumn As Long: lastColumn = ws.Cells(1, ws.Columns.Count).End(xlToLeft).Column  
    
  ' 結果を表示
    MsgBox "最終列は " & lastColumn & " 列目です。"   

  GetLastColumn= lastColumn 
    
End Function  

解説

ws.Columns.Countは一番右端のセルの列番号を返し、
End(xlToLeft) .Colum は一番右端のセルから左方向に向かって最初にデータが入力されているセルの列番号を返します。
※シートで「Ctrl + ←」を押したときと同じ動作です。

今回は、Excel VBAを使って最終行と最終列を簡単に取得する方法についてご紹介しました。
これらの方法を使うことで、データの範囲を動的に扱うことができ、効率的なマクロを作成することができます。
ぜひ、皆さんのVBAマクロに取り入れてみてください!


XFacebookLINE
キャリア採用募集中!

入社後にスキルアップを目指す若手の方も、ご自身の経験を幅広いフィールドで生かしたいベテランの方も、お一人おひとりの経験に応じたキャリア採用を行っています。

Sky株式会社のソフトウェア開発や製品、採用に関するお問い合わせについては、下記のリンクをご確認ください。
お問い合わせ
ホーム