Valor VBA - Como usar a função de valor VBA do Excel?

Índice:

Anonim

Valor VBA

A jornada do VBA começa com o conhecimento de como os valores são armazenados nas células. Portanto, conhecer a função VALUE no VBA é mais importante. Depois de estudar sobre a propriedade VBA VALUE, você poderá saber como os valores são armazenados no VBA. Este artigo explica todos os tipos de função VALUE no VBA, como como o valor é armazenado nas células, quente para definir o valor, como inserir o valor e muito mais.

Como usar a função de valor VBA do Excel?

Aprenderemos como usar a função Valor do VBA com alguns exemplos no Excel.

Você pode fazer o download deste modelo do Excel VBA Value aqui - Modelo do Excel VBA Value

Exemplo # 1 - Defina o valor da célula usando a função Range.Value

Configuração do valor da célula / s usando Range. A função Value consiste basicamente em duas etapas importantes:

  • Definir o intervalo em que você deseja que o valor seja armazenado.
  • Atribuindo um valor ao intervalo definido.

Siga as etapas abaixo para definir o valor no Excel VBA:

Etapa 1: Insira um novo módulo no Visual Basic Editor (VBE).

Etapa 2: defina um novo subprocedimento no módulo inserido para que uma macro possa ser armazenada nele.

Código:

 Sub VBA_Value_Ex1 () End Sub 

Etapa 3: defina uma nova variável como um intervalo que pode ser usado para definir um intervalo no qual você deseja armazenar o valor.

Código:

 Sub VBA_Value_Ex1 () Dim setValue_Var como intervalo final Sub 

Etapa 4: com a ajuda da função VBA RANGE, atribua as células no intervalo a uma variável definida com a ajuda do operador de atribuição.

Código:

 Sub VBA_Value_Ex1 () Dim setValue_Var As Range Defina setValue_Var = ThisWorkbook.Worksheets ("Setting_Cell_Value_1"). Range ("A1") End Sub 

Etapa 5: Agora, use a propriedade Range.Value para poder atribuir valor ao intervalo definido. Digite o nome da variável "setValue_Var" sob o qual o intervalo está definido.

 Sub VBA_Value_Ex1 () Dim setValue_Var As Range Set setValue_Var = ThisWorkbook.Worksheets ("Setting_Cell_Value_1"). Range ("A1") setValue_Var End Sub 

Etapa 6: Coloque um ponto (.) Após a variável para poder selecionar a lista de funções do IntelliSense disponíveis para essa variável de intervalo definida.

Código:

 Sub VBA_Value_Ex1 () Dim setValue_Var As Range Set setValue_Var = ThisWorkbook.Worksheets ("Setting_Cell_Value_1"). Range ("A1") setValue_Var. End Sub 

Etapa 7: arraste para baixo na lista e selecione a função "Valor" para armazenar o valor nessa variável de intervalo.

Código:

 Sub VBA_Value_Ex1 () Dim setValue_Var As Range Set setValue_Var = ThisWorkbook.Worksheets ("Setting_Cell_Value_1"). Range ("A1") setValue_Var.Value End Sub 

Etapa 8: atribua “Bem-vindo ao mundo do VBA!” Como valor para esse intervalo usando o operador de atribuição.

Código:

 Sub VBA_Value_Ex1 () Dim setValue_Var As Range Set setValue_Var = ThisWorkbook.Worksheets ("Setting_Cell_Value_1"). Range ("A1") setValue_Var.Value = "Bem-vindo ao mundo do VBA!" End Sub 

Etapa 9: Concluímos a parte de codificação. Execute esse código pressionando F5 ou o botão Executar em VBE e veja a saída.

Você também pode atribuir o valor a um intervalo de células. Tudo o que você precisa fazer é definir o intervalo da saída que você fornecerá ao array unidimensional em vez de uma única referência de célula.

Etapa 10: no mesmo código acima, altere o intervalo de "A1" para "A1: A5".

Código:

 Sub VBA_Value_Ex1 () Dim setValue_Var As Range Set setValue_Var = ThisWorkbook.Worksheets ("Setting_Cell_Value_1"). Range ("A1: A5") setValue_Var.Value = "Bem-vindo ao mundo do VBA!" End Sub 

Etapa 11: Aperte F5 ou o botão Executar e veja a saída.

Exemplo # 2 - Definir valor da célula usando a propriedade VBA Cells

Este é outro método para definir o valor da célula no VBA. Diferente da função RANGE, as células nem precisam delas. Operador de valor para poder definir valor para a (s) célula (s) específica (s).

Siga as etapas abaixo para definir o valor da célula no Excel VBA:

Etapa 1: insira um novo módulo no VBE, onde você poderá começar a escrever seu novo pedaço de código.

Etapa 2: adicione um novo subprocedimento no módulo inserido, onde você pode armazenar seu código de macro.

Código:

 Sub VBA_Value_Ex2 () End Sub 

Etapa 3: comece a digitar esteWorkbook.Worksheet para acessar a planilha chamada “Setting_Cell_Value_2”.

Código:

 Sub VBA_Value_Ex2 () ThisWorkbook.worksheets End Sub 

Etapa 4: Mencione o nome da planilha entre parênteses entre aspas duplas.

Código:

 Sub VBA_Value_Ex2 () ThisWorkbook.Worksheets ("Setting_Cell_Value_2") End Sub 

Etapa 5 : use a propriedade .Cells para definir o intervalo de células da planilha do Excel especificada.

Código:

 Sub VBA_Value_Ex2 () ThisWorkbook.Worksheets ("Setting_Cell_Value_2"). Células (1, 1) End Sub 

O primeiro argumento da propriedade Cells representa as linhas e o segundo argumento representa a coluna. Portanto, Células (1, 1) significa célula associada à primeira linha e à primeira coluna da planilha “Setting_Cell_Value_2”.

Etapa 6: Agora, com a ajuda do operador de atribuição, atribua um valor a este conjunto de células.

Código:

 Sub VBA_Value_Ex2 () ThisWorkbook.Worksheets ("Setting_Cell_Value_2"). Cells (1, 1) = "O VBA é flexível." End Sub 

Veja que não precisamos da função .Value que precisamos usar ao definir o valor usando a função Range. O método de células não possui essas opções do IntelliSense.

Etapa 7: Pressione F5 ou o botão Executar para executar este código e ver a saída. Você verá uma saída como mostrado na captura de tela abaixo.

Exemplo # 3 - Obter valor da célula no VBA

Até agora, em dois exemplos, vimos como definir valor para uma célula ou intervalo de células. Agora, suponha que um caso seja exatamente o contrário, precisamos obter o valor atribuído a uma célula específica de uma planilha do Excel. Como podemos conseguir isso? Vamos seguir um guia passo a passo.

Suponha que eu atribua um valor como mostrado na captura de tela abaixo, na primeira célula da coluna A, na planilha "Getting_Cell_Value".

Siga as etapas abaixo para obter o valor da célula no Excel VBA:

Etapa 1: Insira um novo módulo no VBE.

Etapa 2: adicione um subprocedimento para que uma macro possa ser armazenada como um código.

Código:

 Sub VBA_Value_Ex3 () End Sub 

Etapa 3: defina uma nova variável chamada Get_Value como uma variante usando a função Dim VBA.

Código:

 Sub VBA_Value_Ex3 () Dim Get_Value como variante End Sub 

Agora, você deve atribuir o valor presente na célula A1 à variável definida acima.

Etapa 4: Digite "Get_Value = ThisWorkbook.Worksheets". Isso permitirá que o compilador VBA acesse a planilha do Excel onde seu valor está armazenado.

Código:

 Sub VBA_Value_Ex3 () Dim Get_Value como variante Get_Value = ThisWorkbook.Worksheets End Sub 

Etapa 5: Mencione o nome da planilha entre parênteses com aspas nas quais o valor está armazenado.

Código:

 Sub VBA_Value_Ex3 () Dim Get_Value como variante Get_Value = ThisWorkbook.Worksheets ("Getting_Cell_Value") End Sub 

Etapa 6: Agora, use o método ponto (.) Range para fornecer a célula exata em que o valor é armazenado na planilha denominada "Getting_Cell_Value".

Código:

 Sub VBA_Value_Ex3 () Dim Get_Value como variante Get_Value = ThisWorkbook.Worksheets ("Getting_Cell_Value"). Range ("A1") End Sub 

Etapa 7: Finalmente, use o método dot (.) Value para que o valor real na célula A1 possa ser acessado pelo compilador.

Código:

 Sub VBA_Value_Ex3 () Dim Get_Value As Variant Get_Value = ThisWorkbook.Worksheets ("Getting_Cell_Value"). Range ("A1"). Valor End Sub 

Etapa 8: como falamos, precisamos obter o valor armazenado na célula A1. Para isso, use MsgBox para mostrar o valor da variável Get_Value (que já acessou o valor digitado na célula A1).

Código:

 Sub VBA_Value_Ex3 () Dim Get_Value como variante Get_Value = ThisWorkbook.Worksheets ("Getting_Cell_Value"). Range ("A1"). Valor MsgBox Get_Value End Sub 

Etapa 9: pressione F5 ou o botão Executar para executar esse código, você obterá o valor presente na célula A1 na caixa de mensagem.

Veja, esse foi o valor que mencionamos na célula A1 da planilha “Getting_Cell_Value”. Certo?

Exemplo # 4 - Podemos obter vários valores de célula por vez?

Vamos supor que eu tenho valores armazenados em três células diferentes A1, A2, A3, conforme mostrado na captura de tela abaixo:

Apenas não se confunda se você vir o texto espalhado pelas colunas A a E., é apenas um layout visível (porque mesclamos as células) e o valor real é armazenado somente nas células A1, A2, A3.

Siga as etapas abaixo para usar o valor VBA do Excel:

Etapa 1: defina uma variável como uma variante em um novo subprocedimento no seu módulo VBA.

 Código: Sub VBA_Value_Ex4 () Dim Get_Value_2 como variante End Sub 

Etapa 2: Use o método Range.Value para recuperar o valor das células A1: A3 e atribua a uma nova variável definida na etapa anterior.

Código:

 Sub VBA_Value_Ex4 () Dim Get_Value_2 como variante Get_Value_2 = ThisWorkbook.Worksheets ("Getting_Cell_Value_2"). Range ("A1: A3"). Valor End Sub 

Etapa 3: Finalmente, use a função MsgBox para exibir os valores armazenados na célula A1: A3.

Código:

 Sub VBA_Value_Ex4 () Dim Get_Value_2 como variante Get_Value_2 = ThisWorkbook.Worksheets ("Getting_Cell_Value_2"). Range ("A1: A3"). Valor MsgBox Get_Value_2 End Sub 

Etapa 4: Pressione F5 ou o botão Executar e veja a saída desse código.

Você receberá um erro em tempo de execução'13 ': incompatibilidade de tipo. A razão por trás desse erro é que estamos definindo uma única variável e atribuindo valores a uma matriz unidimensional (com três linhas). O que logicamente não é possível.

Isto é deste artigo. Vamos encerrar as coisas com alguns pontos a serem lembrados.

Coisas para lembrar

Você não pode definir o valor de várias células enquanto usa o método VBA CELLS, porque ele usa linhas e colunas como argumentos. Você pode especificar apenas o número da linha e o número da coluna.

Você também não pode obter valores armazenados em várias células em uma única caixa de mensagem. Se você precisar recuperar o intervalo de valores, precisará escrever os argumentos get separados para cada valor.

Artigos recomendados

Este foi um guia para o valor do VBA. Aqui discutimos como usar a função de valor do VBA do Excel, juntamente com exemplos práticos e modelo de excel para download. Você também pode consultar nossos outros artigos sugeridos -

  1. Guia completo do VBA On Error
  2. Como usar o formato de número VBA?
  3. Função VBA VLOOKUP com exemplos
  4. Criando uma função VBA no Excel
  5. Como usar a função VBA Val?