Twitter iPhone pliant OnePlus 11 PS5 Disney+ Orange Livebox Windows 11

VBA pour TexBox en boucle

4 réponses
Avatar
philip
Bonjour,
Dans un UserForm, je dois écrire une valeur dans 20 TexBox. Au lieu d'écrier
20 lignes du type UserForm.TexBoxN°.Value = "xxxx" , existe-t-il un moyen
d'écrire une boucle du type :
For i = 1 to 20
UserForm.TexBox(i).Value = "xxxx"
Next i

Merci de votre aide

4 réponses

Avatar
un ancien qui boude
bonjour Philippe,

For i = 1 to 20
Me.Controls("TextBox" & i).Value = "xxxx"
Next i

cordialement
Avatar
anomymousA
bonjour,

un exemple

tampon = Array("toto", "tata")


For Each c In Me.Controls
If TypeName(c) = "TextBox" Then
c.Text = tampon(i)
i = i + 1
End If
Next

A+


Bonjour,
Dans un UserForm, je dois écrire une valeur dans 20 TexBox. Au lieu d'écrier
20 lignes du type UserForm.TexBoxN°.Value = "xxxx" , existe-t-il un moyen
d'écrire une boucle du type :
For i = 1 to 20
UserForm.TexBox(i).Value = "xxxx"
Next i

Merci de votre aide


Avatar
anomymousA
bonjour,

ca marche , mais ca implique que tous les textbox s'appellent TextBox
quelque chose, ce qui n'est pas forcément le cas.

A+


bonjour Philippe,

For i = 1 to 20
Me.Controls("TextBox" & i).Value = "xxxx"
Next i

cordialement





Avatar
un ancien qui boucle
bonjour A,

exact !
c'est justement la façon dont Philippe a formulé sa
question qui a inspiré ma réponse. C'est peut-être sa
volonté d'indicer le nom de ses contrôles pour les
traiter de façon personnalisée.

cordialement



-----Original Message-----
bonjour,

ca marche , mais ca implique que tous les textbox
s'appellent TextBox

quelque chose, ce qui n'est pas forcément le cas.

A+


bonjour Philippe,

For i = 1 to 20
Me.Controls("TextBox" & i).Value = "xxxx"
Next i

cordialement



.