Como usar o comando range para selecionar um intervalo

Como usar o comando range para selecionar um intervalo

Eu tenho um intervalo que preciso selecionar. As regiões superiores do intervalo são A2, que posso obter usando o seguinte comando -

Cells(2, 1)

A faixa inferior, posso usar os seguintes comandos -

Cells(Rows.Count, 1).End(xlUp).Row
Cells(5, Columns.Count).End(xlToLeft).Column

Como posso combinar o comando de todas as minhas células em algo que o intervalo selecionará?

tentei

range=(cells(2,1)),(Cells(Rows.Count, 1).End(xlUp).Row),(Cells(5, Columns.Count).End(xlToLeft).Column).select 

mas recebo um erro de formato.

Responder1

Lembre- Cells(Rows.Count, 1).End(xlUp).Rowse retorna um número inteiro

e

Cells(5, Columns.Count).End(xlToLeft).Columnretorna um número inteiro.

Então você precisa Cells(integer,integer).

Como o seu está agora, ele diz range(A2),integer,integer.select.

Você não usa selecte se for usar dois números inteiros, você precisa envolvê-los em células(). E tudo isso em range().

 Set rng = Range(Cells(2, 1), Cells((Cells(Rows.Count, 1).End(xlUp).Row), (Cells(5, Columns.Count).End(xlToLeft).Column)))

Uma maneira melhor de fazer isso seria

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

Agora, você não tem razão para selectseu alcance - apenas trabalhe rngdiretamente.

informação relacionada