Bonjour,

Afin d'optimiser mon code je souhaiterai créer une seule procédure utilisée lors d'un click sur un bouton.

Jusqu'a présent j'écrivais :
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
6
7
8
Private Sub TB1_Click()
TB1.Caption = ...
End Sub
 
Private Sub TB2_Click()
TB2.Caption = ...
End Sub
...
Mais je voudrais faire un truc du genre :

Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
6
7
8
9
10
11
12
13
Private Sub TB1_Click()
mafonctionclick
End Sub
 
Private Sub TB2_Click()
mafonctionclick
End Sub
 
Private Sub TB3_Click()
mafonctionclick
End Sub
 
....

"mafonctionclick" permettrait de changer la couleur, caption etc...

Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
6
Sub mafonctionclick()
If .Value = ... Then
.Caption = ...
.Backcolor = ...
End If
End Sub

Voila mon soucis : si je ne mets pas de nom d'objet j'obtiens une erreur.
Comment fait on en vba pour utiliser le nom d'objet par laquelle la fonction a été appelée ?
Désolé de ne pas être très clair...