Stockage de variable à partir d'un formulaire
Bonjour,
J'ai un petit problème concernant l'utilisation de variables définies à partir d'un formulaire.
Je m'explique. J'ai créé un formulaire qui contient un certain nombre de boutons proposant chacun une couleur différente. Lorsqu'on clique dessus j'enregistre les référence de la couleur choisie pour pouvoir l'utiliser par la suite. Voici le code simplifié du formulaire avec deux couleurs :
Code:
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21
| Dim Couleur_RGB As String
Dim R_Interior, G_Interior, B_Interior As Integer
Private Sub Orange1_Click()
Couleur_RGB = "R207 G077 B018"
Call Charte
End Sub
Private Sub Violet1_Click()
Couleur_RGB = "R106 G029 B088"
Call Charte
End Sub
Sub Charte()
' Décode des valeurs RGB
R_Interior = Mid(Couleur_RGB, 2, 3)
G_Interior = Mid(Couleur_RGB, 7, 3)
B_Interior = Mid(Couleur_RGB, 12, 3)
End Sub |
N'étant pas du tout familier de l'utilisation des formulaires ou des "private sub" je ne sais pas comment sont gérées les variables enregistrées... (je mets toujours toutes les macros dans un seul module).
Le but est d'utiliser ces variables pour mettre le fond de nombreux en-tête avec la couleur définie initialement par l'utilisateur quand il a cliqué sur le formulaire. En l'occurrence je fais un appel du formulaire dans le module contenant toutes mes macros :
Code:
1 2 3 4 5 6
| Sub Charte_Open()
Charte_Graphique_Formulaire.Show
Range("B2").Interior.Color = RGB(R_Interior, G_Interior, B_Interior)
End Sub |
Mais mes variables définies en dehors de ma macro dans le code du formulaire ne sont apparemment pas enregistrées. J'ai tenté de mettre le "Dim... As" au niveau du module mais ce n'est manifestement pas le problème.
Ma macro générale est assez longue et va chercher plusieurs fichiers .csv pour les enregistrer en tant qu'onglet etc. tout le traitement (en tout cas la mise en forme de ces onglets) doit utiliser la couleur déterminée initialement.
Je suppose que la réponse doit être très simple... :oops: