Notifications
Clear all

Atribuir ao valor de uma variável o valor de uma célula

2 Posts
2 Usuários
0 Reactions
1,473 Visualizações
(@fgx516)
Posts: 3
New Member
Topic starter
 

Suponhamos que temos o valor X na célula A1.

Então um código em VBA seleciona uma célula:
Range("A4").Select

Agora, queremos atribuir para a variável N o valor da célula A1 utilizando o código:
N = ActiveCell.Offset(0, -3).Value

Porém, isso não funciona, pois o valor X não é armazenado em N.

Preciso que seja utilizando o Offset, já tentei usar também o comando Evaluate, mas sem sucesso.

Caso alguém saiba como resolver isso, fico muito agradecido.

 
Postado : 31/03/2018 6:12 pm
(@klarc28)
Posts: 971
Prominent Member
 
Option Explicit

Sub TESTE()
Dim N As Double
Range("A4").Select
N = ActiveCell.Offset(-3, 0).Value

MsgBox N
End Sub

Cinco dicas que foram muito úteis para mim:

1) Quando não sei fazer algo no VBA, vou ao menu EXIBIÇÃO >> MACROS >> GRAVAR MACRO
Faço o que eu quero aí volto ao menu EXIBIÇÃO >> MACROS >> PARAR GRAVAÇÃO
Aperto Alt + F11 e vejo como a macro fez aquilo. Tento entender e tento adaptar.

2) Quando vou criar um código e o resultado não está saindo como o esperado, entro no código e vou apertando F8 para executar passo a passo, aí vou passando o mouse sobre as variáveis para verificar se o valores delas estão corretos, já consertei milhares de códigos dessa forma.

3) Antes de executar o código, vou ao menu Depurar >> Compilar. Isso ajuda corrigir erros mais simples, como o nome de uma variável digitado errado.

4) Declaro todas as variáveis. Isso também evita erros.

5) Sempre uso o Option Explicit lá no início. Ele me obriga a declarar as variáveis.

 
Postado : 31/03/2018 8:11 pm