Transmition de valeur d'un USF form à un autre

  • Initiateur de la discussion St@tman
  • Date de début
S

St@tman

Guest
Bonjour le forum

Voilà, je cherche à récupérer la valeur d'un textbox dans un autre textbox sur une autre USF
Je m'explique:
Dans un USF A, j'ai un bouton qui sert à ouvrir un autre USF B. Dans celui-ci,
j'ai une combobox dans laquel on choisit une donnée puis elle s'inscrit dans une textbox.
Comment faire pour lorsquel'on valide l'USF B, la valeur de la textbox vienne alimenter une autre textbox situé dans l'USF A

Merci de votre aide
@+
 
@

@+Thierry

Guest
Salut St@Tman, le Forum

Selon ton projet...... Deux solution...

Soluce 1
Soit tu ne décharges pas le UserForm "UsfB" qui contient donc une donnée dans une TextBox "TxbB" .... qui doit donc être transmise dans une TextBox "TxbA" du premier Userform "UsfA"....

Et par conséquent tu appelles ton Userform "UsfA" par un bouton sur le "UsfB" qui fera ceci (entre autre)

Private Sub CommandButtonSortie_Click () 'Du UsfB
'blah, blah, blah
Me.Hide '<<<<<(Le Userform reste en mémoire ainsi que les valeurs contenues dans ses controls)
with UsfA
.Show
.TxbA = UsfB.TxbB
End With
End Sub



Soluce 2
Tu utilises une Variable Public... Pour faire une variable Public dont la portée sera sur tout le Projet :
Dans un Module Standard (pas un Private Module de UserForm ou de WorkSheet, ou de ThisWorkBook) tu écris ceci en Top du Module :

Public MaTextBoxTxbB as String
'si c'est une variable de type String (Chaine de Caractères), ou bien Interger (Nombre Entier), ou bien Double (Nombre avec Décimal), etc (je ne sais pas ce qui a dans ta TextBox)

Et dans ton UsfB quand tu as des Données dans ta TextBox, tu t'arranges par un évènement quelconque (Enter, Change, Exit...) d'initialiser la Variable Public comme suit :

Private Sub TextBox1_Change()
MaTextBoxTxbB = TxbB
End Sub

Et donc dans la sortie de ce UserForm UsfB

Private Sub CommandButtonSortie_Click () 'Du UsfB
'blah, blah, blah
Unload
With UsfA
.Show
.TxbA = MaTextBoxTxbB
End Sub

Je te rassure de suite c'est beaucoup plus simple à faire qu'à expliquer !!

La soluce 2 offre l'avantage de ne pas garder chargé un UserForm entier qui, surtout si il est volumineux avec beaucoup de Controls, peut monopoliser pas mal d'espace mémoire. Alors qu'une petite Variable suffit pour garder en mémoire la String ou autre chose de ta TextBox...

Voilà Mr St@tMan, bon après midi à tous et à toutes
@+Thierry
 
@

@+Thierry

Guest
Bonsoir St@Man, et Romfret et le Forum


"Just For THe Fun" j'ai un peu complété ton fichier Romfret, pour mettre en pratique...


Bonne Soirée
@+Thierry
 

Pièces jointes

  • Usf.........zip
    16.2 KB · Affichages: 21

Discussions similaires

Statistiques des forums

Discussions
312 094
Messages
2 085 244
Membres
102 833
dernier inscrit
Hassna