Effacer contenu textbox actif+positionner bouton

  • Initiateur de la discussion Initiateur de la discussion cathodique
  • Date de début Date de début

Boostez vos compétences Excel avec notre communauté !

Rejoignez Excel Downloads, le rendez-vous des passionnés où l'entraide fait la force. Apprenez, échangez, progressez – et tout ça gratuitement ! 👉 Inscrivez-vous maintenant !

cathodique

XLDnaute Barbatruc
Bonjour🙂,

Je voudrais faire un formulaire de correction. L’idée est d’effacer le contenu de la textbox qui a le focus via un bouton.

Est-il possible que ce bouton se mette à droite et au même niveau que la textbox active (ayant le focus).

J’espère avoir bien exposé le problème.

En vous remerciant par avance.
 

Pièces jointes

Roland_M🙂, Pierrejean🙂, Lone-wolf🙂, bonjour

C'est impeccable, ça fonctionne comme je voulais.

@Roland_M : En fait, pour le moment je ne sais pas quel sera le nombre de lignes à traiter.
Une fonction c'est déjà dur pour moi. Pour arriver au module de classe, ce n'est pas de ma "classe"😀😉.
Pas encore le niveau😉, pour ça.

Merci à vous, Très gentil de votre part.
 
Bonsoir,

Une variante

Code:
Dim Txt(1 To 12) As New ClasseSaisie
Private Sub UserForm_Initialize()
  For b = 1 To 12: Set Txt(b).GrSaisie = Me("textbox" & b): Next b
End Sub

Private Sub B_efface_Click()
  temp = Me.B_efface.Tag
  Me(temp) = ""
  Me(temp).SetFocus
End Sub

Module de classe

Public WithEvents GrSaisie As MSForms.TextBox
Private Sub GrSaisie_MouseDown(ByVal Button As Integer, ByVal Shift As Integer, ByVal X As Single, ByVal Y As Single)
  temp = GrSaisie.Name
  UserForm1.B_efface.Top = UserForm1(temp).Top
  UserForm1.B_efface.Tag = temp
End Sub

JB
 

Pièces jointes

Houlala!😎 la classe, je suis vraiment très content de vos retours.

Vraiment, là vous me gâtez. Merci infiniment.
Serai-je capable de tout assimilé? Très gentil de votre part.

Merci à vous tous. J’apprécie beaucoup.
Comme je suis un lève tôt, je les réserve pour demain matin.

Pour ce soir, et avant d'aller au lit, j'ai un petit souci pour lequel je me résous à ouvrir une discussion.

Je reviendrai demain aux nouvelles.

Bonne soirée😉
 
Bonsoir,

Une variante

Code:
Dim Txt(1 To 12) As New ClasseSaisie
Private Sub UserForm_Initialize()
  For b = 1 To 12: Set Txt(b).GrSaisie = Me("textbox" & b): Next b
End Sub

Private Sub B_efface_Click()
  temp = Me.B_efface.Tag
  Me(temp) = ""
  Me(temp).SetFocus
End Sub

Module de classe

Public WithEvents GrSaisie As MSForms.TextBox
Private Sub GrSaisie_MouseDown(ByVal Button As Integer, ByVal Shift As Integer, ByVal X As Single, ByVal Y As Single)
  temp = GrSaisie.Name
  UserForm1.B_efface.Top = UserForm1(temp).Top
  UserForm1.B_efface.Tag = temp
End Sub

JB
Bonjour Boisgontier🙂,

ça ne pouvait être que parfait vu ton haut niveau.

Merci beaucoup.

Bonne journée🙂
 
Bon_jour

Content de trouver d'autres utilisateurs de la variable Tag.

Avec le fichier de Laetitia 😀, il serait prudent de rajouter CB_Vider.Tag = "TextBox1" dans la macro UserForm_Initialize (pour éviter une erreur à l'effacement du premier).

Pour le fun, avec ma manie de simplifier les problèmes, j'avais aussi un exemple sans bouton : effacer le texte par double clic.
 

Pièces jointes

Bonjour cathodique
Le Fil , le Forum
Pour illustrer l'utilisation de la Propriété "Tag" si chère à Si... et que j'utilise aussi souvent que possible Lol
voilà ce que j'ai modifié dans les procédures de Si...
pour permettre l'erreur de sélection et revenir en arrière Lol
VB:
Public WithEvents Tx As MSForms.TextBox
Private Sub Tx_DblClick(ByVal Cancel As MSForms.ReturnBoolean)
  Tx = IIf(Tx = "", Tx.Tag, "")
End Sub
Dim Tx(8) As New Tx, i As Byte, x
VB:
Private Sub UserForm_Initialize()
For i = 1 To 8
  x = Feuil1.Cells(i, 1)
   Set Tx(i).Tx = Me("TextBox" & i)
   With Me("TextBox" & i)
      .Value = x
      .Tag = x
   End With
Next i
End Sub
Merci a vous
Bonne fin de Journée
Amicalement
jean marie
 
- Navigue sans publicité
- Accède à Cléa, notre assistante IA experte Excel... et pas que...
- Profite de fonctionnalités exclusives
Ton soutien permet à Excel Downloads de rester 100% gratuit et de continuer à rassembler les passionnés d'Excel.
Je deviens Supporter XLD

Discussions similaires

M
Réponses
9
Affichages
1 K
M
L
Réponses
4
Affichages
776
Lindsay_RBD
L
B
Réponses
16
Affichages
3 K
bilbinou
B
B
Réponses
2
Affichages
979
bilbinou
B
K
Réponses
12
Affichages
2 K
Retour