Multipe controle avec le même évènement
Le
SLED
Bonjour,
J'ai un userform avec bcp de textbox (nametextbox_1 à 100) pour lesquels il
faut exécuter le même évènement sur par exemple after_update ou dbl_click.
Comment peut-on simplifier le code pour avoir une déclaration pour un
ensemble de textbox et non une déclaration par textbox (0 fois la même
chose) ?
Merci de votre aide (et encore merci).
A+
Sled
J'ai un userform avec bcp de textbox (nametextbox_1 à 100) pour lesquels il
faut exécuter le même évènement sur par exemple after_update ou dbl_click.
Comment peut-on simplifier le code pour avoir une déclaration pour un
ensemble de textbox et non une déclaration par textbox (0 fois la même
chose) ?
Merci de votre aide (et encore merci).
A+
Sled

Poser une question


Essaie :
For i = 1 To 100
With Me.Controls("nametextbox_" & i)
'ton code
End With
Next i
Cordialement.
Daniel
Tu as besoin d'un module de classe. Tu trouveras à cette adresse
un exemple : http://cjoint.com/?blqWf00JtJ
Tu peux ajouter autant de combobox que tu désires... et tu n'auras
qu'à aller dans le module de classe définir le comportement de chacun
pour un ou des événements disponibles.
"SLED"
Bonjour,
J'ai un userform avec bcp de textbox (nametextbox_1 à 100) pour lesquels il
faut exécuter le même évènement sur par exemple after_update ou dbl_click.
Comment peut-on simplifier le code pour avoir une déclaration pour un
ensemble de textbox et non une déclaration par textbox (0 fois la même
chose) ?
Merci de votre aide (et encore merci).
A+
Sled
Merci, c'est justement cette tâche que je voudrais réduire. Puisque
combobox1 à 100 ont le même comportement pour le même événement (par exemple
: After Update).
Il n'existe pas un truc du genre
Private Sub TextDesciption_1_(1)_AfterUpdate() "to
TextDesciption_1_(100)_AfterUpdate()"
mon code ou nom fonction
End Sub
ou doit-on faire
Private Sub TextDesciption_1_1_AfterUpdate()
mon code ou nom fonction
End Sub
Private Sub TextDesciption_1_2_AfterUpdate()
mon code ou nom fonction
End Sub
Private Sub TextDesciption_1_3_AfterUpdate()
mon code ou nom fonction
End Sub
...
ou exécuter un code au chargement du formulaire pour donner les différents
événements avec une boucle du type for ?
Merci de votre aide et plein de bonne chose.
A+
SLED
liste déroulante de droite dans le haut du module du module
de classe pour l'objet "GrCombo". L'événement ne fait pas partie
de cette liste. Comme tu ne décris pas ce que tu veux faire, il est
difficile de faire d'autres suggestions.
"SLED"
Bonjour,
Merci, c'est justement cette tâche que je voudrais réduire. Puisque
combobox1 à 100 ont le même comportement pour le même événement (par exemple
: After Update).
Il n'existe pas un truc du genre
Private Sub TextDesciption_1_(1)_AfterUpdate() "to
TextDesciption_1_(100)_AfterUpdate()"
mon code ou nom fonction
End Sub
ou doit-on faire
Private Sub TextDesciption_1_1_AfterUpdate()
mon code ou nom fonction
End Sub
Private Sub TextDesciption_1_2_AfterUpdate()
mon code ou nom fonction
End Sub
Private Sub TextDesciption_1_3_AfterUpdate()
mon code ou nom fonction
End Sub
...
ou exécuter un code au chargement du formulaire pour donner les différents
événements avec une boucle du type for ?
Merci de votre aide et plein de bonne chose.
A+
SLED
Ca y est j'ai trouvé un début de réponse.
Ce que je désire faire est un regroupement de controle pour leur donner la
même action lors d'un événement similaire (par exemple Afert Update).
Mais manifestement ce n'est pas possible en vba ?
Cela aurait du donner :
Private Sub TextDesciption_AfterUpdate (Index as Integer)
'mon code1
End Sub
au lieu de
Private Sub TextDesciption1_AfterUpdate
'mon code1
End Sub
+
Private Sub TextDesciption2_AfterUpdate
'mon code1
End Sub
et ainsi de suite.
A+
SLED
"michdenis" a écrit :