VBA Selecionar Intervalo / Células
In this Article
- Selecionar uma Única Célula usando VBA
- Selecionar um Intervalo de Células Usando VBA
- Selecionar um Intervalo de Células Não-Contínuas Usando VBA
- Selecionar Todas as Células em uma Planilha
- Selecionar uma Linha
- Selecionar uma Coluna
- Selecionar a Última Célula Não-Vazia em uma Coluna
- Selecionar a Última Célula Não-Vazia em uma Linha
- Selecionar a Região Atual em VBA
- Selecionar uma Célula que Seja Relativa a Outra Célula
- Selecionar um Intervalo Nomeado no Excel
- Seleção de uma Célula em Outra Planilha
- Manipulando o Objeto Selection em VBA
- Usando a Contrução With…End With
VBA permite selecionar uma célula, intervalos de células, ou todas as células da planilha. Você pode manipular a célula ou intervalo selecionado usando o objeto Selection.
Selecionar uma Única Célula usando VBA
Você pode selecionar uma célula em uma planilha usando o método Select. O código a seguir selecionará a célula A2 na ActiveWorksheet (planilha ativa):
Range("A2").Select
Ou
Cells(2, 1).Select
O resultado é:
Selecionar um Intervalo de Células Usando VBA
Você pode selecionar um grupo de células em uma planilha usando o método Select e o objeto Range. O código a seguir selecionará A1:C5:
Range("A1:C5").Select
Selecionar um Intervalo de Células Não-Contínuas Usando VBA
Você pode selecionar células ou intervalos que não estejam próximos uns dos outros em VBA, separando as células ou intervalos usando uma vírgula. O código a seguir permitirá que você selecione as células A1, C1 e E1:
Range("A1, C1, E1").Select
Você também pode selecionar conjuntos de intervalos não-contínuos em VBA. O seguinte código selecionará A1:A9 e B11:B18:
Range("A1:A9, B11:B18").Select
Selecionar Todas as Células em uma Planilha
Você pode selecionar todas as células de uma planilha usando VBA. O código a seguir selecionará todas as células de uma planilha.
Cells.Select
Selecionar uma Linha
Você pode selecionar uma determinada linha em uma planilha usando o objeto Row e o número de índice da linha que você deseja selecionar. O código a seguir selecionará a primeira linha em sua planilha:
Rows(1).Select
Selecionar uma Coluna
Você pode selecionar uma determinada coluna em uma planilha usando o objeto Column e o número de índice da coluna que você deseja selecionar. O código a seguir selecionará a coluna C em sua planilha:
Columns(3).Select
Selecionar a Última Célula Não-Vazia em uma Coluna
Digamos que você tenha dados nas células A1, A2, A3 e A4 e gostaria de selecionar a última célula não em branco que seria a célula A4 na coluna. Você pode usar VBA para fazer isto e o método Range.End.
O Método Range.End pode aceitar quatro argumentos: xlToLeft, xlToRight, xlUp e xlDown.
O código a seguir selecionará a última célula não-vazia que seria A4 neste caso, se A1 for a célula ativa:
Range("A1").End(xlDown).Select
Selecionar a Última Célula Não-Vazia em uma Linha
Digamos que você tenha dados nas células A1, B1, C1, D1 e E1 e gostaria de selecionar a última célula não em branco que seria a célula E1 na linha. Você pode usar VBA para fazer isto e o método Range.End.
O código a seguir selecionará a última célula não em branco que seria E1 neste caso, se A1 for a célula ativa:
Range("A1").End(xlToRight).Select
Selecionar a Região Atual em VBA
Você pode usar o Propriedade CurrentRegion do Objeto Range a fim de selecionar uma intervalo retangular de células em branco e não em branco ao redor de uma determinada célula de entrada específica. Se você tiver dados nas células A1, B1 e C1, o código a seguir selecionaria esta região em torno da célula A1:
Range("A1").CurrentRegion.Select
Assim, a faixa A1:C1 seria selecionada.
Selecionar uma Célula que Seja Relativa a Outra Célula
Você pode usar o Propriedade Offset para selecionar uma célula que seja relativa a outra célula. O código a seguir mostra como selecionar a célula B2 que é 1 linha e 1 coluna em relação à célula A1:
Range("A1").Offset(1, 1).Select
Selecionar um Intervalo Nomeado no Excel
Você pode selecionar Intervalos Nomeados também. Digamos que você tenha nomeado as células A1:A4 como “Frutas”. Você pode usar o seguinte código para selecionar o intervalo nomeado:
Range("Frutas").Select
Seleção de uma Célula em Outra Planilha
Para selecionar uma célula em outra planilha, primeiro é necessário ativar a planilha usando o método de Worksheet.Activate. O código a seguir permitirá selecionar a célula A7, na planilha chamada Planilha5:
Worksheets("Planilha5").Activate
Range("A1").Select
Manipulando o Objeto Selection em VBA
Uma vez selecionada uma célula ou intervalo de células, você pode referir-se ao Objeto Selection a fim de manipular estas células. O seguinte código seleciona as células A1:C1 e define a fonte destas células para Arial, o estilo da fonte para negrito e itálico e a cor de preenchimento para verde.
Sub FormatarSelecao()
Range("A1:C1").Select
Selection.Font.Name = "Arial"
Selection.Font.Bold = True
Selection.Font.Italic = True
Selection.Interior.Color = vbGreen
End Sub
O resultado é:
Usando a Contrução With…End With
Podemos repetir o exemplo acima usando o a Declaração With / End With para nos referirmos ao Objeto Selection apenas uma vez. Isto economiza a digitação e normalmente torna seu código mais fácil de ler.
Sub UsandoWithEndWithComSelecao()
Range("A1:C1").Select
With Selection
.Font.Name = "Arial"
.Font.Bold = True
.Font.Italic = True
.Interior.Color = vbGreen
End With
End Sub