OVH Cloud OVH Cloud

Initialisation des contrôles d'une UserForm

2 réponses
Avatar
Sylvie
Bonjour,

Je pose une question qui a d=E9j=E0 =E9t=E9 trait=E9e il y a=20
quelques semaines et pour laquelle je n'ai pas not=E9 la=20
r=E9ponse.

Quand on a de nombreux contr=F4les dans une UserForm (ex :=20
20 textbox), y-a-t-il un moyen d'aller plus vite que
textbox1.text =3D ""
textbox2.text =3D ""
...

Merci de me r=E9pondre
Sylvie.

2 réponses

Avatar
Michel Pierron
Bonjour Sylvie;
Si tu n'as pas indiqué de texte lors de la création des contrôles, tous les
contrôles sont vierges à l'initialisation; tu n'as donc pas à t'en préoccuper.
MP

"Sylvie" a écrit dans le message de
news:131c901c3f6f8$1d4884c0$
Bonjour,

Je pose une question qui a déjà été traitée il y a
quelques semaines et pour laquelle je n'ai pas noté la
réponse.

Quand on a de nombreux contrôles dans une UserForm (ex :
20 textbox), y-a-t-il un moyen d'aller plus vite que
textbox1.text = ""
textbox2.text = ""
...

Merci de me répondre
Sylvie.
Avatar
Michel Gaboly
Bonsoir,

Le problème se pose tout de même si le même UserForm est affiché plu-
sieurs fois à la suite : il est bien évidemment possible de le décharger
(Unload) et le recharger (Show qui entraîne Load) entre chaque affichage.

Cela permet de le réinitialiser, et si au départ tous les contrôles sont
vierges, le problème est résolu, mais effacer les TextBox présente 2
avantages :

1 - C'est probablement + rapide.

2 - Cela permet, ce qui peut être utile, de conserver certaines données.


Pour cela, une boucle, attachée par exemple à un bouton "Suite", nommé
par hypothèse "BSuite" :


Private Sub BSuite_Click()
' Ici le reste du code à exécuter quand on clique sur BSuite
RAZTextBoxes
End Sub

Private Sub RAZTextBoxes()
Dim c As Control
For Each c In Controls
If TypeName(c) = "TextBox" Then
c = ""
End If
Next c
End Sub




Bonjour Sylvie;
Si tu n'as pas indiqué de texte lors de la création des contrôles, tous les
contrôles sont vierges à l'initialisation; tu n'as donc pas à t'en préoccuper.
MP

"Sylvie" a écrit dans le message de
news:131c901c3f6f8$1d4884c0$
Bonjour,

Je pose une question qui a déjà été traitée il y a
quelques semaines et pour laquelle je n'ai pas noté la
réponse.

Quand on a de nombreux contrôles dans une UserForm (ex :
20 textbox), y-a-t-il un moyen d'aller plus vite que
textbox1.text = ""
textbox2.text = ""
...

Merci de me répondre
Sylvie.


--
Cordialement,

Michel Gaboly
http://www.gaboly.com