
我有一個需要選擇的範圍。該範圍的上部區域是 A2,我可以使用以下命令獲得 -
Cells(2, 1)
較低的範圍,我可以使用以下命令來獲取 -
Cells(Rows.Count, 1).End(xlUp).Row
Cells(5, Columns.Count).End(xlToLeft).Column
如何將所有單元格命令組合成範圍將選擇的內容?
我試過
range=(cells(2,1)),(Cells(Rows.Count, 1).End(xlUp).Row),(Cells(5, Columns.Count).End(xlToLeft).Column).select
但我收到格式錯誤。
答案1
記得Cells(Rows.Count, 1).End(xlUp).Row
回傳一個整數
和
Cells(5, Columns.Count).End(xlToLeft).Column
傳回一個整數。
所以你需要Cells(integer,integer)
.
正如你現在的情況,它是這樣的range(A2),integer,integer.select
。
您不使用select
,如果要使用兩個整數,則需要將其包裝在 cells() 中。整件事情都在 range() 中。
Set rng = Range(Cells(2, 1), Cells((Cells(Rows.Count, 1).End(xlUp).Row), (Cells(5, Columns.Count).End(xlToLeft).Column)))
更好的方法是
Sub test()
Dim rng As Range
Dim lastrow As Integer
lastrow = Cells(Rows.Count, 1).End(xlUp).Row
Dim lastcol As Integer
lastcol = Cells(5, Columns.Count).End(xlToLeft).Column
Set rng = Range(Cells(2, 1), Cells(lastrow, lastcol))
End Sub
現在,您沒有理由選擇select
您的範圍 - 只需直接使用即可rng
。