セル データが連続しているセル範囲(表)の最後の行数と列数を取得(コードたった1行)

※より実装に近く表示させる為、コードの改行を避けています。スマホ等で閲覧される際は向きを変えてご覧ください。

※実装するバージョンによってはバージョンアップの仕様により動作しないコードもあります。実装には動作確認の上ご使用下さい。

Option Explicit


Sub CellRangeListRowCol(ByVal Sht As Worksheet, ByRef r As LongByRef c As Long)
'******************************************************************************
'データが連続しているセル範囲(表)の最後の行数と列数を取得(コードたった1行)
'******************************************************************************
'Cell(1,1)からデータが入っていることが条件
'[Shift]+[Ctrl]+[*]と同じ範囲

Dim RngDB As Variant
    RngDB = Sht.Cells(1, 1).CurrentRegion
    r = UBound(RngDB)
    c = UBound(RngDB, 2)

End Sub


Private Sub test()
Dim Sht As Worksheet
Dim r As Long, c As Long

Set Sht = ThisWorkbook.Worksheets("Sheet1")
Call CellRangeListRowCol(Sht, r, c)
Debug.Print r
Debug.Print c
Set Sht = Nothing

'6
'4

End Sub

 

 

2000年01月01日|[VBサンプルコード]:[CELL]