Autres Enlever texte sur un bouton (contrôle de formulaire)

Caninge

XLDnaute Accro
Bonjour à tous,

sur une feuille je veux mettre les 102 lettres du scrabble.
il fait certainement un code pour faire cette manœuvre.

Action 1 : je clique sur le bouton le A disparaît.
Action 2 : j'appuie une deuxième fois et le A revient

et la même chose pour toutes les autres lettres.

Bien Sympa à vous de me trouver le code

A
 

Pièces jointes

  • Modifier Texte sur un bouton.xlsx
    11 KB · Affichages: 13

Caninge

XLDnaute Accro
Bonsoir job75, Danielco, JM

j'ai prit la solution de JOB75 et affecter une macro à chaque bouton.

Le problème c'est qu'il y a 102 lettres dans un jeu de scrabble.

En prenant son temps...

Merci
 

Pièces jointes

  • Modifier Texte sur un bouton_2.xlsm
    17 KB · Affichages: 8

danielco

XLDnaute Accro
Il faut renommer les boutons Bouton01A, Bouton02A etc. Ensuite, pour reprendre l'idée de Job75, attache cette macro à tous tes boutons :

VB:
Sub Bouton()
  Dim Lettre As String
  Lettre = Right(Application.Caller, 1)
  If Right(ActiveSheet.Shapes(Application.Caller).DrawingObject.Caption, 1) = Lettre Then
    ActiveSheet.Shapes(Application.Caller).DrawingObject.Caption = ""
  Else
    ActiveSheet.Shapes(Application.Caller).DrawingObject.Caption = Lettre
  End If
End Sub

Daniel
 

Staple1600

XLDnaute Barbatruc
Re Caninge, Bonsoir le fil, job75, danielco

J'arrive un peu tard, mais comme c'est pondu, je livre
VB:
Sub Btn()
Static X$, Z As Shape
Set Z = ActiveSheet.Shapes(Application.Caller)
If Len(Z.DrawingObject.Caption) Then
X = Z.DrawingObject.Caption
Z.DrawingObject.Caption = Empty
Else
Z.DrawingObject.Caption = X
End If
End Sub
Ce qui est amusant c'est qu'il faut affecter cette macro (ou celles de mes petits camarades) 102 fois ;)
Alors qu'un module de classe enleverait cette fastidieuse tâche.
 

job75

XLDnaute Barbatruc
Je ne vois pas pourquoi Daniel et JM utilisent ActiveSheet.Shapes(Application.Caller).DrawingObject.

Alors qu'on peut utiliser comme je l'ai fait ActiveSheet.DrawingObjects.(Application.Caller).

Et (sauf erreur) on ne peut pas utiliser un Module de classe sur des contrôles de formulaire.

Il est par contre facile, par une boucle, de leur affecter une macro.
 

Discussions similaires

Statistiques des forums

Discussions
312 215
Messages
2 086 322
Membres
103 178
dernier inscrit
BERSEB50