Précédent   Forum des professionnels en informatique > Logiciels > Microsoft Office > Word > VBA Word
Partagez cette discussion sur d'autres réseaux sociaux : Viadeo Twitter Google Facebook Digg Delicious MySpace Yahoo
Réponse Proposer ce sujet en actualité
 
Outils de la discussion
Publicité
'
Vieux 12/07/2008, 11h40   #1
Invité régulier
 
Inscription : mai 2008
Messages : 15
Détails du profil
Informations forums :
Inscription : mai 2008
Messages : 15
Points : 5
Points : 5
Par défaut Userform : traitement identique de plusieurs TextBoxS

Bonjour !

Je voudrais dans une userform appliquer un traitement presque similaire à toutes les Textbox, mais comment les appeler ??

Code :
1
2
3
4
5
 
For i = 1 to 12
    UserForm1.TextBox(i).Text = i * ...
    ...
Next i
La syntaxe TextBox(i) n'est pas acceptée... comment procéder ?

Merci pour votre aide !

Raoul
VicomteRaoul est déconnecté   Envoyer un message privé Réponse avec citation 00
Vieux 12/07/2008, 14h13   #2
Inactif
 
Inscription : juillet 2007
Messages : 4 555
Détails du profil
Informations forums :
Inscription : juillet 2007
Messages : 4 555
Points : 5 002
Points : 5 002
Bonjour,

Code :
1
2
n = 22
Controls("Text" & n) se réfère à la textbox Text22
joue avec
ucfoutu est déconnecté   Envoyer un message privé Réponse avec citation 00
Vieux 22/08/2008, 21h51   #3
Invité régulier
 
Inscription : mai 2008
Messages : 15
Détails du profil
Informations forums :
Inscription : mai 2008
Messages : 15
Points : 5
Points : 5
Je te remercie, tu m'as aidé à avancer.

La syntage exacte est :

Code :
1
2
3
 
n = 22
UserForm1.Controls("TextBox" & n).Value = "merci"
VicomteRaoul est déconnecté   Envoyer un message privé Réponse avec citation 00
Vieux 01/09/2008, 12h34   #4
Invité régulier
 
Inscription : juin 2008
Messages : 18
Détails du profil
Informations forums :
Inscription : juin 2008
Messages : 18
Points : 9
Points : 9
Bonjour à tous,

Voici une version plus "élargie" sur le TextBox.
L'avantage c'est que l'on peut traiter n'importe quel TextBox sans chercher à une logique dans le nom de l'objet

Code :
1
2
3
4
5
6
7
Call TextBoxSender(MyTextBox)
.....
.....
 
Private Sub TextBoxSender(TextBoxSenderIn As TextBox)
    TextBoxSender.Value = "Merci"
End Sub
On envoi comme paramètre de TextBoxSender le nom réel (Ex: MyTextBox) du TextBox tel que tu le définis dans ton Userform.
pirlouis est déconnecté   Envoyer un message privé Réponse avec citation 00
Vieux 01/09/2008, 13h00   #5
Invité régulier
 
Inscription : juin 2008
Messages : 18
Détails du profil
Informations forums :
Inscription : juin 2008
Messages : 18
Points : 9
Points : 9
Citation:
Envoyé par JackOuYA Voir le message


HS
Mais non, mais non,

Ce n'est pas HS cela fonctionne, j'utilise ce code moi-même pour un traitement de tout mes TextBox.

Exemple Réel:

Code :
1
2
3
4
5
6
7
8
9
Private Sub TextBoxName_Exit(ByVal Cancel As MSForms.ReturnBoolean)
    Call TextBoxExit(TextBoxName)
End Sub
...
...
 
Private Sub TextBoxExit(TextBoxSender As TextBox)
    TextBoxSender.Value = Trim$(TextBoxSender.Value)
End Sub
pirlouis est déconnecté   Envoyer un message privé Réponse avec citation 00
Réponse Proposer ce sujet en actualité Cette discussion est résolue.
Outils de la discussion



Fuseau horaire GMT +2. Il est actuellement 04h27.


 
 
 
 
Partenaires

Hébergement Web