Se você deseja passar as variáveis por valor, para uma Sub ou Function que não teve seus argumentos declarados com ByVal, use '('e ')' em torno da variável que vc está passando como parâmetro.
Veja o código do exemplo. A variával Var2 tem seu valor alterado, porque foi passada por referência (default no VB até a versão 6), enquanto que a variável Var1 não, embora a sub MudaValor não teve seus primeiro argumento declarado como ByVal.
Sub MudaValor(Var1 As String, Var2 As String)
Var1 = "Valor alterado"
Var2 = "Valor alterado"
End Sub
'====================
Private Sub Form_Click()
Dim Var1 As String
Dim Var2 As String
Var1 = "O valor não foi alterado"
Var2 = "O valor não foi alterado"
MudaValor (Var1), Var2
Print Var1
Print Var2
Var1 = "O valor não foi alterado"
Var2 = "O valor não foi alterado"
MudaValor Var1, Var2
Print Var1
Print Var2
End Sub
'===========================
Execute o programa, e no form que abrir, dê um clique no mesmo. O resultado das chamadas à Sub MudaValor aparecerão impressas no próprio form
www.cinquini.com.br/vcinquini>". Hoje, vai saber...
0 comentários:
Postar um comentário