エクセルVBAでセルを選択する方法はいくつかありますが、ここでは私がよく使う方法を紹介します。
「Range」よりも「Cells」の方が変数を使いやすいです。
-----------
基本
-----------
Cells(行番号, "列")
-----------
A1を選択
-----------
Sub slctCell()
Cells(1, "A").Select
End Sub
-----------
C15を選択
-----------
Sub slctCell()
Cells(15, "C").Select
End Sub
-------------------
変数でC15を選択
-------------------
Sub slctCell()
Dim myRow As Long
myRow = "15"
Cells(myRow, "C").Select
End
----------------------
C列の最終行を選択
----------------------
Sub
slctCell()
'65536行目から上へあがって、突き当たったところが最終行
Cells(65536,
"C").End(xlUp).Select
End Sub
----------------------------
C列の最終行を選択 (変数)
----------------------------
Sub slctCell()
Dim myRow As Long
myRow =
Cells(65536, "C").End(xlUp).Row
Cells(myRow, "C").Select
End
Sub
----------------------
行を選択
----------------------
Sub
slctCell()
ActiveCell.Rows.EntireRow.Select
End Sub
----------------------
複数行の選択
----------------------
Sub
slctCell()
Dim topRow As Long
Dim lstRow As Long
Dim
sltRow As String
'選択範囲の先頭、最終行を取得
topRow = Selection.Row
lstRow = Selection.Rows(Selection.Rows.Count).Row
sltRow = topRow
& ":" & lstRow
Rows(sltRow).Select
End
Sub
----------------------
すべて選択
----------------------
Sub
slctCell()
Cells.Select
End Sub
----------------------
四隅の選択
----------------------
Sub
slctCell()
’A2からC10を選択
Range(Cells(2, "A"), Cells(10,
"C")).Select
End Sub
----------------------
四隅の選択 (変数)
----------------------
Sub
slctCell()
’A2からC10を選択
Dim myRow1 As Long
Dim myRow2
As Long
myRow1 = 2
myRow2 = 10
Range(Cells(myRow1,
"A"), Cells(myRow2, "C")).Select
End Sub
|