Copie de Valeur de TextBox entre 2 USF

Boostez vos compétences Excel avec notre communauté !

Rejoignez Excel Downloads, le rendez-vous des passionnés où l'entraide fait la force. Apprenez, échangez, progressez – et tout ça gratuitement ! 👉 Inscrivez-vous maintenant !

Provence Vintage

XLDnaute Occasionnel
Bonjour le Forum,

J'ai un USF nommé: DonnéesGénérales,
Une TextBox1 dont je veux que la Valeur soit recopié dans un autre USF
USF non nommé, dans la TextBox24

le principe du code:
dans UserForm1 Dans TextBox24 j'écris:

UserForm1.TextBox24.Value = DonnéesGénérales.TextBox1.Value

ça ne fonctionne pas!
faut-il le mettre en initialisation du Sub?

Merci😕
 
Re : Copie de Valeur de TextBox entre 2 USF

Bonjour,

As tu essayer d'affecter la valeur à une variable déclarée en Public ?

Public temp as string

Dans ton usf DonnéesGénérales tu fais : TextBox1.Value.Value = Temp
Puis dans ton usf1Puis temp = TextBox24.Value

@ +

Juju
Edit : Yop Robert, j'ai été plus rapide car beaucoup moins courageux que toi 🙂 Tes explications sont bien plus claires !
 
Dernière édition:
Re : Copie de Valeur de TextBox entre 2 USF

Bonsoir Provence Vintage, bonsoir le forum,

Si l'UserForm DonnéesGénérales reste ouvert quand tu ouvres l'UserForm1, tu peux en récupérer la donnée et la mettre, par exemple, à l'initialisation :
Code:
Private Sub UserForm_Initialize() 'à l'initialisation de l'UserForm1
Me.TextBox24.Value = DonnéesGénérales.TextBox1.Value
End Sub
Mais si DonnéesGénérales est fermé avant d'ouvrir UserForm1 il te faudra stocker le contenu de la TextBox1.
Soit dans une cellule quelconque (tu pourras l'effacer ensuite) :
Code:
Private Sub TextBox1_Exit(ByVal Cancel As MSForms.ReturnBoolean)
Range("IV1").Value = me.TextBox1.Value
End Sub
soit sous forme de variable en déclarant dans un module, au tout début, (Module1 par exemple) une variable publique du style :
Code:
Public mavar As String
puis lui affecter la valeur, a la sortie de la Textbox1 par exemple avec
Code:
Private Sub TextBox1_Exit(ByVal Cancel As MSForms.ReturnBoolean)
mavar = TextBox1.Value
End Sub
puis récupérer cette valeur pour l'UserForm1 par :
Code:
Private Sub UserForm_Initialize()
Me.TextBox24.Value = mavar
mavar = ""
End Sub
ou si tu avais stocké dans une cellule :
Code:
Private Sub UserForm_Initialize()
Me.TextBox24.Value = Range("IV1").Value
Range("IV1").Value = ""
End Sub

Voir pièce jointe en exemple...
Il faut taper du texte dans la TextBox1 car mavar est déclarée comme String dans mon exemple... Tu adapteras si besoin.

Édition:

Bonsoir Juju on s'est croisé
 

Pièces jointes

Dernière édition:
- Navigue sans publicité
- Accède à Cléa, notre assistante IA experte Excel... et pas que...
- Profite de fonctionnalités exclusives
Ton soutien permet à Excel Downloads de rester 100% gratuit et de continuer à rassembler les passionnés d'Excel.
Je deviens Supporter XLD

Discussions similaires

Réponses
7
Affichages
602
Retour