Células VBA

As células são na verdade células da planilha e no VBA quando nos referimos às células como uma propriedade de intervalo, estamos na verdade nos referindo às células exatas, em outras palavras, a célula é usada com a propriedade de intervalo e o método de usar a propriedade de células é o seguinte Range ( .Células (1,1)) agora células (1,1) significa que a célula A1 o primeiro argumento é para a linha e o segundo é para a referência da coluna.

Referências de células VBA

Você não precisa de nenhuma introdução especial sobre o que é uma célula VBA. Nos conceitos do VBA, as células também não são diferentes das células normais do Excel. Siga este artigo para ter mais conhecimento do conceito de células VBA.

O que é VBA Range e VBA Cell?

Tenho certeza de que essa é a questão que está passando em sua mente agora. No VBA Range é um objeto, mas Cell é uma propriedade em uma planilha do Excel. No VBA, temos duas maneiras de referenciar um objeto de célula, uma é por meio de intervalo e a outra é por meio de células.

Por exemplo, se você quiser fazer referência à célula C5, poderá usar dois métodos para fazer referência à célula C5.

Usando o método de intervalo: intervalo (“C5”)

Método de Uso de Células: Células (5, 3)

Da mesma forma, se você deseja inserir o valor “Hi” na célula C5, você pode usar o código abaixo.

Usando o método de intervalo: intervalo (“C5”). Valor = “Hi”

Método de uso de células: Células (5, 3) .Value = “Hi”

Agora, se você quiser selecionar várias células, só podemos selecionar através do objeto Range. Por exemplo, se eu quiser selecionar células de A1 a A10 abaixo está o código.

Código: Faixa (“A1: A10”). Selecione

Mas, infelizmente, só podemos fazer referência a uma célula por vez usando a propriedade CELLS. Podemos usar células com objeto de intervalo como o abaixo

Intervalo (“A1: C10”). Células (5,2) significam no intervalo A1 a C10 quinta linha e segunda coluna, ou seja, célula B5.

A Fórmula da Propriedade CÉLULAS em VBA

Observe a fórmula da propriedade CELLS.

  • Índice de linha: nada além de qual linha estamos nos referindo.
  • Índice de coluna: isso nada mais que coluna que estamos referenciando.
  • Células (1, 1) significa célula A1, Célula (2, 1) significa célula A2, Célula (1, 2) significa célula B1.
  • Células (2, 2) significa célula B2, Célula (10, 3) significa célula C10, Célula (15, 5) significa célula E15.

# 1 - Como usar a propriedade CELLS no VBA?

Agora vou te ensinar como usar essas propriedades CELLS no VBA.

Você pode baixar este modelo de células VBA aqui - modelo de células VBA em Excel

Suponha que você esteja trabalhando no nome da planilha denominado Data 1  e deseja inserir um valor “Hello” na célula A1.

O código abaixo faria isso por você.

 Sub Cells_Example () Cells (1, 1) .Value = "Hello" End Sub 

Resultado:

Agora irei para o nome da planilha chamada Data 2 e executarei o código. Mesmo aí vai inserir a palavra “Olá”.

Na verdade, podemos combinar a propriedade CELLS também com um nome de folha específico. Para fazer referência a uma determinada planilha, use o objeto WORKSHEET

Planilhas (“Dados 1”). Células (1,1) .Valor = “Olá”

Isso irá inserir a palavra “Hello” na planilha “Data 1”, independentemente da planilha em que você estiver.

# 2 - Como usar a propriedade CELLS com objeto Range?

Na verdade, podemos usar a propriedade CELLS com um objeto RANGE. Por exemplo, observe o código abaixo.

Intervalo ("C2: E8"). Células (1, 1). Selecione

Para melhor compreensão, inseri alguns números na planilha do excel.

O intervalo de código acima ("C2: E8"). Células (1, 1) .Select diz que no intervalo C2 a E8 selecione a primeira célula. Execute este código e veja o que acontece.

 Sub Células_Exemplo () Intervalo ("C2: E8"). Células (1, 1) .Selecionar End Sub 

Selecionou a célula C2. Mas Células (1, 1) significa célula A1, não é?

O motivo pelo qual selecionou a célula C2 é que, usando o objeto de intervalo, insistimos no intervalo de C2 a E8, de modo que a propriedade Cells trata do intervalo de C2 a E8, não da célula regular A1. Neste exemplo, C2 é a primeira linha e a primeira coluna, então Células (1, 1) .select significa célula C2.

Agora vou mudar o código para Range (“C2: E8”). Células (3, 2) .Selecione e veja o que acontece.

Execute este código e verifique qual célula ele realmente selecionará.

 Sub Células_Exemplo () Intervalo ("C2: E8"). Células (3, 2) .Selecionar End Sub 

Selecionou a célula D4, ou seja, nº 26. Células (3,2) significam começar da célula C2 movida 3 linhas para baixo e 2 colunas para a direita, ou seja, célula D4.

# 3 - Propriedade de células com loops

A propriedade CELLS com loops tem um relacionamento muito bom no VBA. Vejamos o exemplo de inserção de números de série de 1 a 10 usando FOR LOOP. Copie e cole o código abaixo no seu módulo.

 Sub Células_Exemplo () Dim i As Integer For i = 1 To 10 Cells (i, 1) .Value = i Next i End Sub 

Aqui, declarei a variável I como um inteiro.

Então, apliquei FOR LOOP com I = 1 a 10, ou seja, o loop precisa ser executado 10 vezes.

Células (i, 1). Valor = i

Isso significa que quando o loop é executado pela primeira vez, o valor de “I” será 1, então sempre que o valor de “I” for 1, ou seja, Cell (1,1) .value =

Quando o loop retorna o valor de “I” pela segunda vez, ele é 2, então, onde quer que o valor de “I” seja, ele é 2. i .e. Célula (2,1). Valor = 2

Este loop será executado por 10 vezes e inserirá o valor I de A1 a A10.

Coisas para lembrar em células VBA

  • CELLS é propriedade, mas RANGE é um objeto. Podemos usar propriedade com objetos, mas não objeto para a propriedade.
  • Quando o intervalo é fornecido, as células consideram apenas esse intervalo, não o intervalo regular.
  • As células (1, 2) são células B1, da mesma forma as células (1, "B") também são células B1.