Notifications
Clear all

Variáveis Públicas

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

O código a seguir foi criado, apenas, para facilitar a compreensão da minha dúvida a qual não se refere, exatamente, a ele. Minha dúvida é a seguinte: ao executar o código abaixo, eu gostaria que valor da variável "x" (atribuído na macro Teste_1) fosse "levado" para a macro Teste_2. Neste caso, por exemplo, atribuindo o valor 25 à variável, "x", o resultado final deverá ser 50. Não desejo alterar a estrutura do código, exceto nas atribuições da variáveis (privada, pública, global, etc.).

Public Sub Teste_1()
Dim x As Integer
x = InputBox("Entre com o valor de x.")
Call Teste_2
MsgBox ("O valor de x é " & a & ".")
End Sub

Public Sub Teste_2()
Dim x As Integer
Dim a As Integer
a = 2 * x
End Sub
 
Postado : 25/07/2016 2:44 pm
(@osvaldomp)
Posts: 858
Prominent Member
 

Experimente:

Option Explicit
Dim x As Integer, a As Integer

Sub Teste_1()
x = InputBox("Entre com o valor de x.")
Call Teste_2
MsgBox "o valor de x é " & x & vbLf & "o valor de a é " & a
End Sub

Sub Teste_2()
a = 2 * x
End Sub

Osvaldo

 
Postado : 25/07/2016 3:25 pm
(@vbajr10)
Posts: 34
Eminent Member
 

Boa noite! Ou também testar com função.

Option Explicit

Sub Teste_1()
Dim x As Integer
    x = InputBox("Entre com o valor de x.")
    MsgBox "o valor de x é " & Valor(x)
End Sub

Function Valor(Nro As Integer) As Integer
    Valor = Nro * 2
End Function
 
Postado : 25/07/2016 4:15 pm