Ceci est une page optimisée pour les mobiles. Cliquez sur ce texte pour afficher la vraie page.

Conservation de variables au travers de plusieurs macro

F

Fab

Guest
Bonjour,
En cliquant sur un bouton, l'utilisateur active une macro qui ouvre une InputBox ou il doit rentrer un chiffre.
Plus tard, en cliquant sur un autre bouton, il active une autre macro qui ouvre une autre InputBox ou il doit rentrer un autre chiffre
Et ainsi de suite.
A chaque fois, le chiffre est rentré dans une autre variable.

Finalement, en cliquant sur un dernier bouton, il active une dernière macro qui doit faire un calcul avec tous les chiffres rentrés. Mais en faisant de cette manière, il n'a plus "souvenir" des variables rentrées dans les autres macros.

Tout le texte ci-dessous est tapé dans 1 module rattaché au classeur actif :

Sub Entree01()
Dim Message1, Title, Default
Dim Var01
Message1 = "Rentrer la 1ère variable"
Default = ""
Var01 = InputBox(Message1, Title, Default)
Range("A1").Select
ActiveCell.Value = "1ère entrée : " & Var01
End Sub

Sub Entree02()
Dim Message1, Title, Default
Dim Var02
Message1 = "Rentrer la 1ère variable"
Default = ""
Var02 = InputBox(Message1, Title, Default)
Range("A2").Select
ActiveCell.Value = "1ère entrée : " & Var02
End Sub

Sub Calcul()
Dim Resultat
Resultat = Var01 + Var02
Range("A3").Select
ActiveCell.Value = "la somme est de : " & Resultat
End Sub

Merci d'avance
 
P

Pascal76

Guest
Salut Fab

Tapes ton code en déclarant en début de modules tes variables public comme ceci

Public Var02 as integer
public Var01 as integer

Sub Entree01()
Dim Message1, Title, Default
Message1 = "Rentrer la 1ère variable"
Default = ""
Var01 = InputBox(Message1, Title, Default)
Range("A1").Select
ActiveCell.Value = "1ère entrée : " & Var01
End Sub

Sub Entree02()
Dim Message1, Title, Default
Message1 = "Rentrer la 1ère variable"
Default = ""
Var02 = InputBox(Message1, Title, Default)
Range("A2").Select
ActiveCell.Value = "1ère entrée : " & Var02
End Sub

Sub Calcul()
Dim Resultat
Resultat = Var01 + Var02
Range("A3").Select
ActiveCell.Value = "la somme est de : " & Resultat
End Sub

Pascal

Ps : Un petit bonjour à Laurent qui lira obligatoirement ce post (LOL)
 
F

Fab

Guest
Pascal,
Si tu as encore du temps à me consacrer, j'ai encore une question concernant ces variables public.
Maintenant, je souhaiterais intégrer un graphique avec pour les x, des valeurs que je donnerai moi une fois pour toute (1, 2, 3, ...) et pour les y, les variables qui ont été récupérées via les inputbox.
Merci.
 

Discussions similaires

Réponses
3
Affichages
438
Les cookies sont requis pour utiliser ce site. Vous devez les accepter pour continuer à utiliser le site. En savoir plus…