nonoss56
Messages postés14Date d'inscriptionsamedi 1 mars 2008StatutMembreDernière intervention 1 avril 2012
-
22 févr. 2009 à 13:40
nonoss56
Messages postés14Date d'inscriptionsamedi 1 mars 2008StatutMembreDernière intervention 1 avril 2012
-
22 févr. 2009 à 23:14
Bonjour,
J'ai un petit souci. ci dessous un prog succinct qui l'explicite ==> macro1
J'ai créé un formulaire avec un bouton appelé "BUREAU"
Au lancement du prog macro1, je souhaiterais que le MSGBOX me renvoie la valeur "Bonjour"... mais il ne me renvoie rien. Comment faire pour récupèrer cette valeur dans mon programme macro1...?
Merci de votre aide
Sub macro1()
UserForm1.Show
MsgBox x
End Sub
Dans le formulaire userform1, j'ai mis ce bout de code:
Private Sub BUREAU_Click()
x = "bonjour"
UserForm1.Hide
End Sub
cs_Jack
Messages postés14006Date d'inscriptionsamedi 29 décembre 2001StatutModérateurDernière intervention28 août 201579 22 févr. 2009 à 16:20
Salut
Non, cnt, la valeur du 'x' est stockée dans la UserForm.
Méthode d'appel des UserForm :
-1- Dans ta Userform (UF), tu déclares une variable dans la partie Déclarations :
Public maVariable As String
-2- Dans ta UF, au moment de la fermeture (le Hide), tu renseignes la valeur de x
maVariable = "Bonjour Codes-Sources"
-3- Ouverture de la UF depuis ta macro
Dim maForme As UserForm1
Set maForme = New UserForm1
Load maForme ' Charge en mémoire
maForme.maVariable = "Valeur initiale au lancement"
maForme.Show vbModal ' Affiche la forme et attend (modal)
' Ici, la UF vient d'être mise en Hide : On contnue
' Affiche la valeur de la variable
MsgBox maForme.maVariable
' Et décharge complètement la UF
Unload maForme
PS : Le VB de Excel (que l'on devine puisque tu ne le dis pas) est du VBA, pas du .Net --> Catégorie de la question modifiée
Vala
Jack, MVP VB NB : Je ne répondrai pas aux messages privés
<hr />Le savoir est la seule matière qui s'accroit quand on la partage (Socrate)