VBA – Variáveis de Objeto de Intervalo (Dim / Set Range)
In this Article
Neste tutorial, abordaremos a variável de objeto Range do VBA.
Já falamos sobre o que são variáveis e constantes em nosso tutorial Tipos de dados do VBA – Variáveis e constantes. Agora, vamos examinar o objeto de intervalo no VBA e como declarar uma variável como um objeto de intervalo. O objeto de intervalo é usado para denotar células ou várias células no VBA. Portanto, é muito útil usá-lo em seu código.
Clique aqui para obter mais informações sobre intervalos e células do VBA.
O Objeto Range do VBA
Você pode usar o objeto range para se referir a uma única célula. Por exemplo, se você quiser fazer referência à célula A1 em seu código VBA para definir o valor da célula e colocar o texto da célula em negrito, use este código:
Sub ReferenciaUnicaCelulaUsandoRange()
Range("A1").Value = 89
Range("A1").Font.Bold = True
End Sub
Ao pressionar Executar ou F5 no teclado para executar o código, você obterá o seguinte resultado na planilha real:
Você pode usar o objeto de intervalo para fazer referência a várias células ou intervalos. Por exemplo, se você quiser fazer referência ao intervalo de células (A1:C1) em seu código VBA, poderá usar o objeto de intervalo do VBA, conforme mostrado no código abaixo:
Sub ReferenciaVariasCelulasUsandoRange()
Range("A1:C1").Value = "ABC"
Range("A1:C1").Borders(xlEdgeBottom).LineStyle = xlDouble
End Sub
Quando você pressiona Executar ou F5 no teclado para executar o código, obtém o seguinte resultado em sua planilha real:
Como Declarar uma Variável como um Intervalo
Você precisará usar as palavras-chave Dim e Set ao declarar uma variável como um intervalo. O código abaixo mostra como declarar uma variável como um intervalo.
Sub DeclaraEAtribuirUmRange()
Dim rng As Range
Set rng = Range("A10:B10")
rng.Value = "AutomateExcel"
rng.Font.Bold = True
rng.Select
rng.Columns.AutoFit
End Sub
O resultado é:
Seleção de Linhas Específicas em seu Objeto Range
Você pode selecionar linhas específicas em seu objeto Range. O código abaixo mostra como fazer isso:
Sub SelectingSpecificRowsInTheRangeObject()
Dim rng As Range
Set rng = Range("A1:C3")
rng.Rows(3).Select
End Sub
O resultado é:
Seleção de colunas específicas em seu objeto Range
Você pode selecionar colunas específicas em seu objeto Range. O código abaixo mostra como fazer isso:
Sub SelecionandoColunasEspecificasComRange()
Dim rng As Range
Set rng = Range("A1:C3")
rng.Columns(3).Select
End Sub