Variable globale !!

Variable globale !! - VB/VBA/VBS - Programmation

Marsh Posté le 03-06-2005 à 23:19:23    

salut
je debute en VB
je voudrais savoir comment on declare des variables globales
car quand je teste mon programme dans la fonction add() la variable num1 est bien stocker
mais apres dans la fonction resul()  
si fenetre.text est 123456  
num 1 => 12345
et num 2 => 123456  
 
merci d'avance
 

Code :
  1. ' Declaration des variables
  2.     Dim resultat As Double
  3.     Dim num1 As Double
  4.     Dim num2 As Double
  5.     Dim signe As String
  6. Private Sub add_Click()
  7.   num1 = fenetre.Text
  8.   fenetre.Text = ""
  9.   signe = "+"
  10. End Sub
  11. Private Sub chiffre_Click(index As Integer)
  12.     If fenetre.Text = "" Then
  13.     fenetre.Text = index
  14.     Else
  15.     num1 = fenetre.Text
  16.     fenetre.Text = num1 & index
  17.     End If
  18. End Sub
  19. Private Sub resul_Click()
  20.     If signe = "+" Then
  21.    
  22.     resultat = Val(num1) + Val(num2)
  23.     fenetre.Text = resultat
  24.     signe = ""
  25.  
  26.     ElseIf signe = "-" Then
  27.     num2 = fenetre.Text
  28.     resultat = Val(num1) - Val(num2)
  29.     fenetre.Text = resultat
  30.     signe = ""
  31.    
  32.     End If
  33. End Sub


Message édité par ggeforce le 04-06-2005 à 15:17:46

---------------
Feedback
Reply

Marsh Posté le 03-06-2005 à 23:19:23   

Reply

Marsh Posté le 05-06-2005 à 15:17:25    

up


---------------
Feedback
Reply

Marsh Posté le 06-06-2005 à 07:33:44    

  public resultat As Double  
   public num1 As Double  
   public num2 As Double  
   public signe As String
 
essaye comme ca

Reply

Marsh Posté le 06-06-2005 à 10:39:59    

j'ai essaiyer mais sa change rien  
je tape mon chiffre puis je click sur "+"
je tape mon deusieme chiffre puis je click sur "="
donc il devrais faire si mes deux chiffres sont 2244 et 1133
numero_un = 2244
numero_deux = 1133
resultat = 3377
 
lui a la place me fait
numero_un = 2244
puis dans la fonction egal
numero_un = 113
numero_deux = 1133
resultat = 1246
 
form1

Code :
  1. Private Sub Form_Load()
  2.     '   Initialisation des variables a zero
  3.       fenetre.Text = ""
  4.       Module1.numero_un = 0
  5.       Module1.numero_deux = 0
  6.       Module1.resultat = 0
  7.       End Sub
  8. Private Sub add_Click()
  9.   Module1.numero_un = fenetre.Text
  10.   fenetre.Text = ""
  11.   Module1.signe = "+"
  12. End Sub
  13. Private Sub dif_Click()
  14.   Module1.numero_un = fenetre.Text
  15.   fenetre.Text = ""
  16.   Module1.signe = "-"
  17.  
  18. End Sub
  19. Private Sub chiffre_Click(index As Integer)
  20.     If fenetre.Text = "" Then
  21.     fenetre.Text = index
  22.     Else
  23.     Module1.numero_un = fenetre.Text
  24.     fenetre.Text = Module1.numero_un & index
  25.     End If
  26. End Sub
  27. Private Sub resul_Click()
  28.     Module1.numero_deux = fenetre.Text
  29.     Call Module1.fonction_egal
  30.    
  31. End Sub


 
module1

Code :
  1. ' Declaration des variables
  2.     Public resultat As Double
  3.     Public numero_un As Double
  4.     Public numero_deux As Double
  5.     Public signe As String
  6.    
  7. Sub fonction_egal()
  8.    
  9.     If signe = "+" Then
  10.     'numero_deux = fenetre.Text
  11.     resultat = Val(numero_un) + Val(numero_deux)
  12.     Form1.fenetre = resultat
  13.     signe = ""
  14.  
  15.     ElseIf signe = "-" Then
  16.     numero_deux = fenetre.Text
  17.     resultat = Val(numero_un) - Val(numero_deux)
  18.     fenetre.Text = resultat
  19.     signe = ""
  20.    
  21.     End If
  22.    
  23. End Sub


Message édité par ggeforce le 06-06-2005 à 10:44:05

---------------
Feedback
Reply

Marsh Posté le 06-06-2005 à 19:18:51    

up


---------------
Feedback
Reply

Marsh Posté le 06-06-2005 à 20:36:49    

sur la ligne 31 de form1
 
quelle opération veux tu faire? je parle du "et" (& )
 

Reply

Sujets relatifs:

Leave a Replay

Make sure you enter the(*)required information where indicate.HTML code is not allowed