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