Como inserir um valor em uma célula usando vba?

Notas principais

Definir valor da célula

Para definir um valor de célula, você precisa usar a propriedade “Valor” e, em seguida, definir o valor que deseja definir. Aqui usei alguns exemplos para ajudá-lo a entender isso.

1. Insira um valor em uma célula

Suponha que você precise inserir o valor “Concluído” na célula A1. Neste caso o código seria algo como abaixo:

 Range("A1").Value = "Done"
definir valor da célula

Como você pode ver, primeiro defino o endereço da célula onde desejo adicionar o valor e depois a propriedade value. No final, atribuí o valor “Concluído” usando o sinal de igual “=” entre aspas duplas.

Você também pode usar a propriedade “Células”, assim como o código a seguir.

 Cells(1, 1).Value = "Done"

O código acima também se refere à célula A1.

Além disso, existe outra maneira que você pode usar: não usar a propriedade value atribuindo diretamente o valor à célula.

 Cells(1, 1) = "Done"

Mas é recomendado usar a propriedade value para inserir um valor em uma célula.

Agora suponha que você queira inserir um número em uma célula. Neste caso, não é necessário usar aspas duplas. Você pode escrever o código da seguinte maneira.

 Range("A1") = 99

Você também pode DATE e NOW ( funções VBA ) para inserir uma data ou carimbo de data / hora em uma célula usando o código VBA.

 Range("A1").Value = Date Range("A2").Value = Now

E se você quiser inserir um valor na célula ativa, o código que você precisa seria assim:

 ActiveCell.Value = Date

2. Usando uma caixa de entrada

Se quiser que um usuário especifique um valor para inserir em uma célula, você pode usar uma caixa de entrada. Suponha que você queira inserir o valor na célula A1, o código ficaria assim:

usar caixa de entrada para valor
 Range("A1").Value = _ InputBox(Prompt:="Type the value you want enter in A1.")

No código acima, o valor da célula A1 é atribuído ao valor retornado pela caixa de entrada que retorna o valor inserido pelo usuário.

3. De outra célula

Você também pode definir o valor da célula usando o valor de outra célula. Suponha que você queira adicionar valor à célula A1 da célula B1, o código seria:

 Range("A1") = Range("B1").Value
definir o valor da célula usando o valor de outra célula

Você também pode consultar a célula B1 sem usar a propriedade value.

 Range("A1") = Range("B1")

4. Defina o valor em um intervalo inteiro

Imagine que você deseja inserir valores em várias células ou em um intervalo de células em vez de uma única célula, neste caso você precisa escrever um código como abaixo:

 Range("A1:A10").Value = Date Range("B1, B10").Value = Now
definir valor em todo o intervalo

Na primeira linha do código você tem um intervalo inteiro da célula A1 a A10, e na segunda linha há duas células B1 e B10.

Obtenha o valor da célula

Como eu disse, você pode usar a mesma propriedade value para obter o valor de uma célula.

1. Obtenha o valor do ActiveCell

Suponha que você queira obter o valor da célula ativa, neste caso você precisa usar o seguinte código.

 ActiveCell.Value = Range("A1")
obter valor da célula

No código acima, você usou a propriedade value com a célula ativa e atribuiu esse valor à célula A1.

2. Atribuir a uma variável

Você também pode obter um valor de uma célula e atribuí-lo a uma variável .

atribuir a uma variável

Agora no código acima você tem a variável “i” que tem data como tipo de dado . Na segunda linha do código, o valor da célula A1 é atribuído à variável.

3. Exibir em uma MsgBox

Agora imagine que você deseja exibir o valor da célula A1 usando uma caixa de mensagem . Neste caso o código seria como abaixo.

 MsgBox Range("A1").Value
exibir em uma msgbox

No código acima, a caixa de mensagem pegará o valor da célula A1 e mostrará ao usuário.

msgbox-take-value

Alterar valor da célula

Você também pode fazer alterações no valor de uma célula, e aqui compartilhei alguns exemplos que podem ajudá-lo a entender isso.

1. Adicione um número a um número existente

Digamos que se você quiser adicionar um ao número que tem na célula A1, você pode usar o código a seguir.

 Range("A1").Value = Range("A1").Value + 1

O código acima atribui um valor à célula A1 pegando o valor da própria célula A1 e adicionando um a ela. Mas você também pode usar VBA IF THEN ELSE para escrever uma condição a ser alterada apenas quando houver um número na célula .

 If IsNumeric(Range("A1").Value) Then Range("A1").Value = Range("A1").Value + 1 End If

2. Exclua o primeiro caractere da célula

Agora, o código a seguir remove o primeiro caractere do valor da célula e atribui o restante do valor à célula.

 Range("A1").Value = Right(Range("A1").Value, Len(Range("A1").Value) - 1)

Adicione um comentário

O seu endereço de email não será publicado. Campos obrigatórios marcados com *