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 ValueExemplo # 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 -
- Guia completo do VBA On Error
- Como usar o formato de número VBA?
- Função VBA VLOOKUP com exemplos
- Criando uma função VBA no Excel
- Como usar a função VBA Val?