【VBA】最終行を取得する

最終行を取得する方法を
記載します!

最終行の取得方法は
 ・上から下へ見ていく方法
 ・下から上へ見ていく方法
の2つがあります!

前提

ここでは例として、
 ・シート「sample」のB列「社員名」の
 ・最終行(10行目)
を取得します。

最終行を取得する(上から下へ見ていく)

起点となるセル(開始と開始)は決まっていることが多いと思います。

ここでは起点をセル「B2」にするために、
 ・開始を定数「START_ROW」で「2」
 ・開始を定数「START_COLUMN」で「2」
と定義します。

Option Explicit

Sub sample()
    
    '開始行と開始列を指定
    Const START_ROW As Long = 2
    Const START_COLUMN As Long = 2
    
    Dim lastRow As Long
    
    '最終行を取得する(上から下へ見ていく)
    lastRow = Worksheets("sample").Cells(START_ROW, START_COLUMN).End(xlDown).Row
    
    MsgBox ("最終行は『" & lastRow & "』行目です!")
    
End Sub

「End」の引数に「xlDown」を指定します。


上記を実行すると、最終行が取得できたことを確認できます。

最終行を取得する(下から上へ見ていく)

空白行がある場合、「上から下へ見ていく方法」では最終行を取得することが出来ません。


空白行がある場合は、「下から上へ見ていく方法」で最終行を取得します。

「開始列」は同様に定数「START_COLUMN」で「2」と定義します。

Option Explicit

Sub sample()
    
    '開始列を指定
    Const START_COLUMN As Long = 2
    
    Dim lastRow As Long
    
    '最終行を取得する(下から上へ見ていく)
    lastRow = Worksheets("sample").Cells(Rows.COUNT, START_COLUMN).End(xlUp).Row
    
    MsgBox ("最終行は『" & lastRow & "』行目です!")
    
End Sub

「End」の引数に「xlUp」を指定します。

「Rows.COUNT」は最大行数(=1,048,576)を示します。


上記を実行すると、最終行が取得できたことを確認できます。

ここでの「下から~」とは「最大行数(=1,048,576)から~」という意味です。

参考

以下の記事で、最終を取得する方法を紹介しています。
併せてご確認ください。

タイトルとURLをコピーしました