'行数と列数
With ActiveSheet.Range("B3:E7")
Debug.Print .Rows.Count '行数
Debug.Print .Columns.Count '列数
End With
'行番号と列番号
With ActiveSheet.Range("B3:E7")
Debug.Print .Row '最初の行番号
Debug.Print .Rows(.Rows.Count).Row '最後の行番号
Debug.Print .Column '最初の列番号
Debug.Print .Columns(.Columns.Count).Column '最後の列番号
End With
'値
With ActiveSheet.Range("B3:E7")
.Cells(1, 1).Select '左上の値
.Cells(1, .Columns.Count).Select '右上の値
.Cells(.Rows.Count, 1).Select '左下の値
.Cells(.Rows.Count, .Columns.Count).Select '右下の値
.Cells(.Count).Select '右下の値
End With
'行と列
With ActiveSheet.Range("B3:E7")
.Rows(1).Select '最初の行
.Rows(.Rows.Count).Select '最後の行
.Columns(1).Select '最初の列
.Columns(a.Columns.Count).Select '最後の列
End With
では、解説していきます。
VBAでRangeの行数や列数を取得
Ragneで取得したセル範囲の、行数や列数を取得するVBAコードをご説明します。
Rangeのイメージ
まず、Rangeで取得したセル範囲から、行数と列数を取得する方法です。
行数と列数を取得
次のように取得します。
行数:セル範囲.Rows.Count
列数:セル範囲.Columns.Count
では、取得してみます。
行数と列数を取得してみる
Rangeで取得したセル範囲から、行数と列数を取得してみます。
行数
Rangeで取得したセル範囲の、行数を取得するVBAコードです。
Sub TEST1()
'行数
Debug.Print ActiveSheet.Range("B3:E7").Rows.Count
End Sub
実行してみます。
結果は、『5』行となります。
列数
Rangeで取得したセル範囲の、列数を取得するVBAコードです。
Sub TEST2()
'列数
Debug.Print ActiveSheet.Range("B3:E7").Columns.Count
End Sub
実行してみます。
結果は、『4』列となります。
VBAでRangeの行番号や列番号を取得
次に、Rangeで取得したセル範囲から、行番号と列番号を取得する方法です。
Rangeのイメージ
Rangeで取得したセル範囲から、行番号と列番号を取得するイメージです。
最初と最後の行番号
Rangeで取得したセル範囲から、最初と最後の行番号を取得するイメージです。
次のように取得します。
最初の行番号:セル範囲.Row
最終行の番号:セル範囲.Rows(セル範囲.Rows.Count).Row
最初と最後の列番号
Rangeで取得したセル範囲から、最初と最後の列番号を取得する方法です。
次のように取得します。
最初の列番号:セル範囲.Column
最終列の番号:セル範囲.Columns(セル範囲.Columns.Count).Column
という感じです。
最終行と最終列の番号が、結構ややこしいですね。
行番号と列番号を取得してみる
では、実際に、行番号と列番号を取得してみます。
最初の行番号
Rangeで取得したセル範囲で、最初の行番号を取得するVBAコードです。
Sub TEST3()
'最初の行番号
Debug.Print ActiveSheet.Range("B3:E7").Row
End Sub
実行してみます。
結果は、『3』行目となります。
最後の行番号
Rangeで取得したセル範囲で、最後行の番号を取得するVBAコードです。
Sub TEST4()
'最後の行番号
With ActiveSheet.Range("B3:E7")
Debug.Print .Rows(.Rows.Count).Row
End With
End Sub
実行してみます。
結果は、『7』行目となります。
最初の列番号
Rangeで取得したセル範囲で、最初の列番号を取得するVBAコードです。
Sub TEST5()
'最初の列番号
Debug.Print ActiveSheet.Range("B3:E7").Column
End Sub
実行してみます。
結果は、『2』列目となります。
最後の列番号
Rangeで取得したセル範囲で、最終列の番号を取得するVBAコードです。
Sub TEST6()
'最後の列番号
With ActiveSheet.Range("B3:E7")
Debug.Print .Columns(.Columns.Count).Column
End With
End Sub