Bonjour
n'étant pas très caler en VBA je me suis retrouvé confronté a un soucis que je n'ai pas pu résoudre malgré mes recherche
J'ai un userform (nommer "UserForm Appelé Partout" dans le fichier exemple), le fonctionnement est le suivant, lorsqu'il est appelé, il modifie la textbox du userform qui l'appelle, jusque la pas de problème vu que je peux directement utilisé le noms des attribut du userform appelant sous la forme "Userform1.textBox1 = Me.textbox.value"
Ou ca se complique c'est qu'il doit pouvoir le faire pour tous les userform qui vont l'appeler, j'ai donc pensé à déclarer une variable en public qui a qui sera affecté la valeur récupéré, et ensuite utilisé pour affecté la valeur qui y est contenu sur la textbox du userform appelant,
mais ca ne fonctionne qu'a moitié le code plante apres sans message d'excel permettant de situé d'ou peux venir le problème
Voila le code utilisé
Dans le Userform1 qui appelle
fichier-exemple.xlsm
Private Sub CommandButton1_Click()
var = ""
UserForm2.Show
MsgBox "Valeur dans le form 1 : " & var
TextBoxAChanger.Value = var
End Sub
Dans le Userform2 qui est appeler
Private Sub CommandButton1_Click()
var = TextBoxARecuperer.Value
MsgBox "Valeur dans le form 2 : " & var
Unload Me
End Sub
Et la variable var est déclaré dans un module a coté comme suit "Public var As String"
PS : le contexte est le suivant, le userform2 qui est appelé permet de renvoyé la date sélectionner et mettre cette date dans la textbox du userform1 qui appelle afin que la date soit récupéré pour être utilisé et comme je le disait plus haut, ce userform de date est appelé sur différents userfomr d'où la nécessité de rendre son appel générique
PPS : je met un fichier exemple
Fichier Exemple.xlsm
Merci d'avance pour votre aide
Cdt
Louis
Partager