Obtenha o valor da célula no Excel VBA (exemplos passo a passo)

Obtenha valor de célula com Excel VBA

Uma célula é uma célula individual e também faz parte de um intervalo, tecnicamente existem dois métodos para interagir com uma célula em VBA e são o método de intervalo e o método de célula, o método de intervalo é usado como intervalo ("A2") .Valor que nos dará o valor da célula A2 ou podemos usar o método da célula como células (2,1) .valor que também nos dará o valor das células A2.

Seja o trabalho do Excel ou o VBA funcionando, todos nós precisamos trabalhar com células ou células porque todos os dados serão armazenados em células, então tudo se resume a quão bem sabemos sobre células em VBA. Portanto, se as células são uma parte tão crucial do VBA, é importante entendê-las bem, e se você é um iniciante no que diz respeito às células VBA, este artigo o guiará sobre como obter valores de célula no Excel VBA em detalhe.

Em primeiro lugar, podemos fazer referência ou trabalhar com células em VBA de duas maneiras, ou seja, usando a propriedade CELLS e o objeto RANGE. Por que CELLS é uma propriedade e por que RANGE é um objeto é uma analogia diferente e, mais tarde neste artigo, chegaremos a esse ponto.

Exemplos de obtenção de valor de célula no Excel VBA

Abaixo estão os exemplos de obtenção do valor da célula no Excel VBA.

Exemplo # 1 - Usando a propriedade RANGE ou CELLS

Por exemplo, na célula A1, temos o valor “Índia”.

Para fazer referência a esta célula, podemos usar uma propriedade CELLS ou um objeto RANGE. Vamos ver os dois em detalhes.

Usando propriedade de intervalo

Primeiro, inicie o procedimento de macro.

Código:

Sub Get_Cell_Value () End Sub

Agora abra o objeto RANGE.

Código:

Sub Get_Cell_Value () Intervalo (End Sub

O primeiro argumento deste objeto é “Cell1”, ou seja, a qual célula estamos nos referindo. Nesse caso, é a célula A1, portanto, precisamos fornecer o endereço da célula entre aspas para o objeto RANGE.

Código:

Sub Get_Cell_Value () Range ("A1") End Sub

Como apenas uma célula está se referindo a outros parâmetros é irrelevante, feche o colchete e coloque um ponto para ver a lista do IntelliSense.

Como você pode ver acima, no momento em que colocamos um ponto, podemos ver toda a lista IntelliSense disponível de propriedades e métodos do objeto de intervalo.

Como estamos selecionando a célula, precisamos escolher o método “SELECT” na lista do IntelliSense.

Código:

Sub Get_Cell_Value () Intervalo ("A1"). Selecione End Sub

Agora selecione a célula diferente de A1 e execute o código.

Não importa qual célula você selecionou no momento em que executa o código. Ele escolheu a célula mencionada, ou seja, célula A1.

Usando a propriedade de células

Da mesma forma, usamos a propriedade CELLS agora.

Código:

Sub Get_Cell_Value () Intervalo ("A1"). Selecione Células (End Sub

Isso é diferente do objeto RANGE, onde poderíamos fornecer diretamente o endereço da célula, mas usando essa propriedade CELLS, não podemos fazer isso.

O primeiro argumento dessa propriedade é “Índice de linha”, ou seja, a qual linha estamos nos referindo. Como estamos selecionando a célula A1, estamos nos referindo à primeira linha, então mencione 1.

O próximo argumento é o “Índice da coluna”, ou seja, a qual coluna estamos nos referindo. A coluna da célula A1 é a primeira coluna, portanto, insira 1.

Nosso código lê CELLS (1, 1) ou seja, primeira linha, primeira coluna = A1.

Agora coloque um ponto e veja se você consegue ver a lista do IntelliSense ou não.

Com as propriedades CELLS, não podemos ver nenhuma lista do IntelliSense, então precisamos ter certeza absoluta do que estamos escrevendo. Insira “Selecionar” como método.

Código:

Sub Get_Cell_Value () Intervalo ("A1"). Selecione as células (1, 1) .Selecione End Sub

Isso também selecionará a célula A1.

Exemplo 2 - Obter valor da célula no Excel VBA

Selecionar é a primeira coisa que aprendemos, agora veremos como obter valor das células. Antes de selecionar a célula, precisamos definir a variável para armazenar o valor da célula.

Código:

Sub Get_Cell_Value1 () Dim CellValue As String End Sub

Agora mencione o endereço da célula usando o objeto RANGE ou a propriedade CELLS. Como você é um iniciante, use o objeto RANGE apenas porque com o objeto RANGE, podemos ver a lista do IntelliSense.

Para a variável definida, coloque um sinal de igual e mencione o endereço da célula.

Código:

Sub Get_Cell_Value1 () Dim CellValue As String CellValue = Range ("A1") End Sub

Mais uma vez, coloque um ponto para ver a lista do IntelliSense.

Na lista VBA IntelliSense, escolha a propriedade “Value” para obter o valor da célula mencionada.

Código:

Sub Get_Cell_Value1 () Dim CellValue As String CellValue = Range ("A1"). Value End Sub

Agora a variável “CellValue” contém o valor da célula A1. Mostre o valor desta variável na caixa de mensagem em VBA.

Código:

Sub Get_Cell_Value1 () Dim CellValue As String CellValue = Range ("A1"). Valor MsgBox CellValue End Sub

Ok, execute o código e veja o resultado em uma caixa de mensagem.

Como há um valor de “ÍNDIA” na célula A1, a mesma coisa também apareceu na caixa de mensagem. Assim, pelo valor VBA da célula, podemos obter o valor da célula.

Exemplo # 3 - Obtenha valor de uma célula para outra célula

Sabemos como obter valor da célula usando o VBA. Agora a questão é como inserir valor na célula. Vamos pegar o mesmo exemplo apenas. Para a célula A1, precisamos inserir o valor de “ÍNDIA” e isso pode ser feito a partir do código abaixo.

Código:

Sub Get_Cell_Value2 () Intervalo ("A1"). Valor = "INDIA" End Sub

Isso inserirá o valor de “ÍNDIA” na célula A1. Da mesma forma, para obter valor de uma célula para outra, podemos escrever o código conforme abaixo.

Código:

Sub Get_Cell_Value2 () Range ("A5"). Value = Range ("A1"). Value End Sub

Deixe-me explicar o código para você.

“Para a célula A5, precisamos do valor que vem do valor da célula A1”, é tudo o que esse código diz. Portanto, isso obterá o valor da célula A1 para A5 usando o código VBA.

Coisas para lembrar

  • Inserir valor nas células e obter valor da célula requer o uso da propriedade “VALUE” do VBA.
  • Usando a propriedade CELLS, podemos selecionar apenas uma célula, mas usando o objeto RANGE. Podemos selecionar várias células.

Artigos interessantes...