Blog

Postado em em 7 de março de 2019

Range e Cells VBA (Trabalhando com Intervalos e Células no VBA)

Aprenda a usar os objetos Range e Cells VBA para conseguir criar códigos no Visual Basic for Applications!

Caso prefira esse conteúdo no formato de vídeo-aula, assista ao vídeo abaixo ou acesse o nosso Canal do YouTube para mais vídeos!

Range e Cells VBA (Trabalhando com Intervalos e Células no VBA)

Nesta aula, vou mostrar como utilizar os objetos Range e Cells VBA, explicando para que eles servem e como criar códigos no Visual Basic for Applications!

O Range VBA e o Cells VBA são dois objetos muito importantes e úteis devido às suas diversas aplicações. Durante esta aula, iremos utilizá-los no VBA para editar o conteúdo de células e intervalos na planilha do Excel.

Aprender a usar os objetos Range e Cells VBA vai permitir que você consiga evoluir de forma rápida e fácil seus códigos em VBA.

O que é o VBA?

VBA é a sigla para Visual Basic for Applications que nada mais é do que uma linguagem de programação. Essa linguagem nos permite programar certas ferramentas, funções, ações, tarefas… Pode também auxiliar a automatizar processos como o que veremos a seguir!

Essa programação é uma série de escritas chamadas de código que indicam para o programa o que desejamos fazer, ou seja, teremos algumas funções próprias do programa para auxiliar na programação e assim atingir nosso objetivo.

Quando utilizar o Range e Cells VBA?

O VBA tem diversas aplicações, mas para este caso vamos analisar dois conceitos básicos do VBA que são Range e Cells. Esses objetos são utilizados para selecionar um intervalo de células ou uma célula específica.

Então, iremos utilizar esses dois objetos quando precisarmos selecionar uma célula ou um intervalo de células para qualquer atividade que quisermos e precisarmos fazer.

Como utilizar o Range e Cells VBA?

Para utilizarmos o VBA primeiramente precisamos abrir o ambiente VBA, temos duas formas de fazer isso: a primeira é indo até a guia desenvolvedor e clicando na opção Visual Basic e a outra forma é utilizando o atalho ALT + F11 (ALT + Fn + F11 caso a primeira opção não funcione). Feito isso irá abrir uma janela do ambiente VBA.

vba1

Para podermos escrever o nosso código é necessário criar um novo módulo, para isso basta ir na guia inserir e depois em módulo.

range e cells vba

Feito isso temos uma aba em branco para começarmos a escrever o nosso código. O código que iremos utilizar para explicar alguns dos conceitos do VBA está logo abaixo:

Sub name()

Range("D10").Value = "João"
Cells(11, 4).Value = "Paulo"

Range("F10:F11").Value = "João"

Range("A1").Select

End Sub

Abaixo vamos explicar o que cada um dessas estruturas faz e em seguida iremos mostrar o resultado deste código.

Sub – Isso é para dizer ao programa que estamos começando uma nova macro, em seguida temos o nome da macro que será utilizada e no final do código temos o End Sub que indica que acabamos o código daquela macro.

Range – Essa estrutura é a responsável por selecionar uma célula ou um intervalo de células e no seu argumento colocamos as referências das células que nem vemos no Excel, ou seja, colocaremos desta forma: “D10”, para indicar uma única célula, ou “F10:F11”, para indicar um intervalo de células. Neste último caso estamos indicando um intervalo que vai da célula F10 até (significado dos dois pontos) a célula F11. É importante lembrar que esse argumento dentro do objeto Range deve ser colocado entre aspas duplas.

Cells – Essa estrutura é responsável por selecionar uma célula específica, ao contrário do range que aceita tanto uma célula quanto um intervalo de células o Cells aceita apenas uma célula. Essa estrutura precisa de dois argumentos o primeiro deles é referente à linha em que se encontra a célula e o segundo é referente à coluna em que se encontra a célula. Portanto, se tivermos essa estrutura: Cells(11, 4) quer dizer que estamos selecionando uma célula que está na linha 11 e na coluna 4, ou seja, estaríamos na célula D11. Neste caso, devemos colocar as coordenadas (linha, coluna) e não a referência da célula como na estrutura Range.

.Value – Essa propriedade nos diz que vamos alterar o valor do objeto, ou seja, iremos alterar o valor de uma célula ou de um intervalo de células. Então, se temos Range(“D10”).Value quer dizer que iremos alterar o valor da célula D10.

= – Esse símbolo nos diz que o que está à esquerda dele irá receber um valor que está a direita, então se tivermos Range(“D10”).Value = “João” que dizer que a célula D10 irá receber o texto João. Como o que a célula está recebendo é um texto é necessário que esteja entre aspas duplas, caso seja um número isso é necessário.

.Select – Essa propriedade é responsável por selecionar uma célula ou um intervalo de células. Funciona como se o usuário fosse selecionar várias células de uma vez ou uma única célula dentro do Excel. Então, quando temos Range(“A1”).Select nós estamos selecionando a célula A1 como se fosse o clique simples do mouse.

Para executar o código podemos ou clicar no botão de “play” em verde ou pressionar a tecla F5 no teclado.

vba4

Feito isso o código será executado e basta alterar para a tela do Excel e verificar o resultado.

range e cells vba

Aqui podemos observar o que o código fez:

Na primeira linha escreveu o nome João na célula D10;

Na segunda linha escreveu o nome Paulo na célula D11;

Na terceira linha escreveu o nome João no intervalo de F10 até F11;

E por fim selecionou a célula A1.

Para saber mais sobre Range e Cells VBA e outros assuntos de Excel e VBA, acompanhe que vamos enviar outros posts.

Conclusão Range e Cells VBA

Nessa aula eu te mostrei como você pode trabalhar com Range e Cells VBA para selecionar uma célula ou intervalo de células de uma forma diferente.

Você pode ter notado que utilizar o Range VBA é mais fácil, só que em alguns casos utilizar Cells acaba sendo muito mais prático, principalmente quando estamos dentro de uma estrutura de repetição, porque vamos poder alterar os números de linhas e colunas.

Já dentro do Range VBA isso fica muito mais complicado de fazer, por isso um não é melhor do que o outro, temos que analisar o contexto primeiro para verificar qual deles será mais viável!

Hashtag Treinamentos

Para acessar outras publicações de VBA, clique aqui!


Quer aprender mais sobre VBA com um minicurso básico gratuito?

Quer sair do zero no Python e virar uma referência na sua empresa? Inscreva-se agora mesmo no Python Impressionador