0
1

Delete article

Deleted articles cannot be recovered.

Draft of this article would be also deleted.

Are you sure you want to delete this article?

指定した列の最終行を取得したい

Posted at

VBAでは、以下のステップで指定した列の最終行を取得することができます。

  1. 指定した列の一番下のセルからCtrl+↑をする
  2. そのセルがブランクの場合は、そのセルが最終行。ブランクではない場合は、その次の行が最終行。

これを実装したものが以下になります。

Function GetLastRowNumber(sheet As Worksheet, col As String) As Long
    Dim lastCell As Range
    Set lastCell = sheet.Range(col & sheet.Rows.Count).Cells.End(xlUp)
    If lastCell = "" Then
        GetLastRowNumber = lastCell.Row
    Else
        GetLastRowNumber = lastCell.Row + 1
    End If
End Function

例: 以下のようなシートがあるとします。

image.png

A列・B列・C列の最終行、すなわち1行目・2行目・4行目をGetLastRowNumberを使って取得します。

Dim sheet As Worksheet
Set sheet = ...

Debug.Print GetLastRowNumber(sheet, "A") '=> 1
Debug.Print GetLastRowNumber(sheet, "B") '=> 2
Debug.Print GetLastRowNumber(sheet, "C") '=> 4

環境情報

image.png

0
1
0

Register as a new user and use Qiita more conveniently

  1. You get articles that match your needs
  2. You can efficiently read back useful information
  3. You can use dark theme
What you can do with signing up
0
1

Delete article

Deleted articles cannot be recovered.

Draft of this article would be also deleted.

Are you sure you want to delete this article?