Objeto de intervalo VBA do Excel
O que é intervalo VBA?
O objeto de intervalo VBA representa uma célula ou várias células em sua planilha do Excel. É o objeto mais importante do Excel VBA. Ao usar o objeto de intervalo Excel VBA, você pode consultar,
- Uma única célula
- Uma linha ou coluna de células
- Uma seleção de células
- Uma gama 3D
Conforme discutimos em nosso tutorial anterior, o VBA é usado para gravar e executar macro. Mas como o VBA identifica quais dados da planilha precisam ser executados. É aqui que os objetos de intervalo do VBA são úteis.
Introdução à referência de objetos em VBA
Fazendo referência ao objeto de intervalo VBA do Excel e ao qualificador de objeto.
- Qualificador de objeto: Isso é usado para referenciar o objeto. Ele especifica a pasta de trabalho ou planilha à qual você está se referindo.
Para manipular esses valores de células, Propriedades e De Depósito são usados.
- Propriedade: Uma propriedade armazena informações sobre o objeto.
- Método: Um método é uma ação do objeto que ele executará. O objeto Range pode executar ações como selecionar, copiar, limpar, classificar, etc.
O VBA segue o padrão de hierarquia de objetos para referenciar objetos no Excel. Você deve seguir a seguinte estrutura. Lembre-se de que o .dot aqui conecta o objeto em cada um dos diferentes níveis.
Aplicativo.Workbooks.Worksheets.Range
Existem dois tipos principais de objetos padrão.
Como fazer referência ao objeto Range VBA do Excel usando a propriedade Range
A propriedade Range pode ser aplicada em dois tipos diferentes de objetos.
- Objetos de planilha
- Objetos de alcance
Sintaxe para propriedade Range
- A palavra-chave “Alcance”.
- Parênteses que seguem a palavra-chave
- Faixa de células relevante
- Cotação (" ")
Application.Workbooks("Book1.xlsm").Worksheets("Sheet1").Range("A1")
Quando você se refere ao objeto Range, como mostrado acima, ele é referido como referência totalmente qualificada. Você disse ao Excel exatamente qual intervalo deseja, em qual planilha e em qual planilha.
Exemplo: MensagemBox Planilha(“planilha1”).Intervalo(“A1”).Valor
Usando a propriedade Range, você pode executar muitas tarefas como,
- Consulte uma única célula usando a propriedade range
- Consulte uma única célula usando a propriedade Worksheet.Range
- Consulte uma linha ou coluna inteira
- Consulte as células mescladas usando a propriedade Worksheet.Range e muito mais
Como tal, será demasiado longo para cobrir todos os cenários para a propriedade range. Para os cenários mencionados acima, demonstraremos um exemplo apenas para um. Consulte uma célula única usando a propriedade range.
Consulte uma única célula usando a propriedade Worksheet.Range
Para se referir a uma única célula, você deve se referir a uma única célula.
A sintaxe é simples “Intervalo (“Célula”)”.
Aqui, usaremos o comando “.Select” para selecionar a única célula da planilha.
Passo 1) Nesta etapa, abra seu Excel.
Passo 2) Nesta etapa,
- Clique em
botão.
- Isso abrirá uma janela.
- Digite o nome do seu programa aqui e clique no botão 'OK'.
- Isso o levará ao arquivo Excel principal. No menu superior, clique no botão 'parar' de gravação para interromper a gravação da macro.
Passo 3) Na próxima etapa,
- Clique no botão Macro
no menu superior. Irá abrir a janela abaixo.
- Nesta janela, clique no botão 'editar'.
Passo 4) A etapa acima abrirá o editor de código VBA para o nome de arquivo “Single Cell Range”. Insira o código conforme mostrado abaixo para selecionar o intervalo “A1” do Excel.
Passo 5) Agora salve o arquivo e execute o programa conforme mostrado abaixo.
Passo 6) Você verá que a célula “A1” está selecionada após a execução do programa.
Da mesma forma, você pode selecionar uma célula com um nome específico. Por exemplo, se você deseja pesquisar uma célula com o nome “Guru99-VBA Tutorial”. Você deve executar o comando conforme mostrado abaixo. Ele selecionará a célula com esse nome.
Range(“Tutorial Guru99-VBA”).Selecione
Para aplicar outro objeto de intervalo, aqui está o exemplo de código.
Faixa para seleção de célula no Excel | Intervalo declarado |
---|---|
Para linha única | Faixa (“1:1”) |
Para coluna única | Faixa (“A: A”) |
Para células contíguas | Faixa (“A1:C5”) |
Para células não contíguas | Faixa (“A1:C5, F1:F5”) |
Para interseção de dois intervalos | Faixa (“A1:C5 F1:F5”)
(Para células de interseção, lembre-se de que não há operador vírgula) |
Para mesclar células | Faixa (“A1:C5”)
(Para mesclar células, use o comando “mesclar”) |
Propriedade da célula
Da mesma forma que o intervalo, em VBA você também pode “Propriedade da célula”. A única diferença é que ele possui uma propriedade “item” que você usa para referenciar as células da sua planilha. A propriedade Cell é útil em um loop de programação.
Por exemplo, nos
Cells.item(Linha, Coluna). Ambas as linhas abaixo referem-se à célula A1.
- Células.item(1,1) OU
- Células.item(1,”A”)
Propriedade de deslocamento de intervalo
A propriedade de deslocamento de intervalo selecionará linhas/colunas longe de sua posição original. Com base no intervalo declarado, as células são selecionadas. Veja o exemplo abaixo.
Por exemplo, nos
Range("A1").offset(Rowoffset:=1, Columnoffset:=1).Select
O resultado para isso será a célula B2. A propriedade offset moverá a célula A1 para 1 coluna e 1 linha de distância. Você pode alterar o valor de rowoffset/columnoffset conforme o requisito. Você pode usar um valor negativo (-1) para mover as células para trás.
Baixe o Excel contendo o código acima
Resumo
- O objeto de intervalo VBA representa uma célula ou várias células em sua planilha do Excel
- Uma única célula
- Uma linha ou coluna de células
- Uma seleção de células
- Uma gama 3D
- Para manipular valores de células, Propriedades e De Depósito são usados
- Uma propriedade armazena informações sobre o objeto
- Um método é uma ação do objeto que ele executará, como selecionar, mesclar, classificar, etc.
- VBA segue o padrão de hierarquia de objetos para referir objetos no Excel usando o operador .dot
- A propriedade Range pode ser aplicada em dois tipos diferentes de objetos
- Objetos de planilha
- Objetos de alcance