Enabled si plusieurs Textbox non vide

max.lander

XLDnaute Occasionnel
Bonjour à tous,

j'aimerai savoir si quelqu'un peut-me dire comment activer un bouton en utilisant la propriété Enabled :

Seulement si 3 Textbox sont "non vides" ceci dans un userform.

Autrement dit je ne sais pas ou positionner mon code et comment faire pour que les conditions se cumulent un "and" suffit -il?

Merci par avance
 

Robert

XLDnaute Barbatruc
Repose en paix
Re : Enabled si plusieurs Textbox non vide

Bonsoir Max.lander, bonsoir le forum,

Peut-être comme ça, à la sortie de la troisième textbox :
Code:
Private Sub TextBox3_Exit(ByVal Cancel As MSForms.ReturnBoolean)
If Me.TextBox1.Value <> "" And Me.TextBox2.Value <> "" And Me.TextBox3.Value <> "" Then Me.CommandButton1.Enabled = True
End Sub
 

max.lander

XLDnaute Occasionnel
Re : Enabled si plusieurs Textbox non vide

Salut Robert,

Merci beaucoup pour ta solution, effectivement elle fonctionne,

Juste une chose si l'utilisateur efface les Textbox le bouton reste activé!

Je pense que je être obligé de mettre un message d'erreur sauf si il y a une autre solution.

Merci encore
 

Robert

XLDnaute Barbatruc
Repose en paix
Re : Enabled si plusieurs Textbox non vide

Bonsoir Max.lander, bonsoir le forum,

Essaie peut-ête comme ça :
Code:
Private Sub TextBox3_Exit(ByVal Cancel As MSForms.ReturnBoolean)
If Me.TextBox1.Value <> "" And Me.TextBox2.Value <> "" And Me.TextBox3.Value <> "" Then 
     Me.CommandButton1.Enabled = True
Else
     Me.CommandButton1.Enabled = False
End If
End Sub
 

laetitia90

XLDnaute Barbatruc
Re : Enabled si plusieurs Textbox non vide

bonjour max.lander,Robert,le forum
on peut quand méme effacer une textbox le bouton reste a true..
par defaut dans proprietees mettre le commandbutton a false ...passer par change

Code:
Private Sub TextBox1_Change()
es
End Sub
Private Sub TextBox2_Change()
es
End Sub
Private Sub TextBox3_Change()
es
End Sub
Sub es()'macro dans user
If TextBox1 <> "" And TextBox2 <> "" And TextBox3 <> "" Then
     CommandButton1.Enabled = True
Else
     CommandButton1.Enabled = False
End If
End Sub
 

Si...

XLDnaute Barbatruc
Re : Enabled si plusieurs Textbox non vide

salut

ou encore :
Code:
Private Sub TextBox1_Change()
  CommandButton1.Enabled = (TextBox1 <> "") * (TextBox2 <> "") * (TextBox3 <> "")
End Sub
Private Sub TextBox2_Change()
  CommandButton1.Enabled = (TextBox1 <> "") * (TextBox2 <> "") * (TextBox3 <> "")
End Sub
Private Sub TextBox3_Change()
  CommandButton1.Enabled = (TextBox1 <> "") * (TextBox2 <> "") * (TextBox3 <> "")
End Sub
 

Robert

XLDnaute Barbatruc
Repose en paix
Re : Enabled si plusieurs Textbox non vide

Boujour le fil, bonjour le forum,

Je savais qu'on pouvait "truander" mon code celui ne s'effectuant qu'à la sortie de la troisième textbox mais comme Max.lander ne donnait pas d'exemple j'avais laissé en l'état. De toute manière je n'aurais pas trouvé aussi efficace. Merci donc à Laetitia et à Si d'avoir corrigé...
 

max.lander

XLDnaute Occasionnel
Re : Enabled si plusieurs Textbox non vide

Salut à tous!

On peut effectivement arriver à laisser le Bouton sur enabled en effaçant les textbox et en jouant sur l'actualisation de l'userform, j'ai donc ajouté un message d'erreur...

Mais les dernières solutions règlent le problème.

Lætitia ou quelqu'un peut expliquer le "es" svp?

Merci encore pour votre aide.
 
Dernière édition:

Robert

XLDnaute Barbatruc
Repose en paix
Re : Enabled si plusieurs Textbox non vide

Bonsoir le fil, bonsoir le forum,

Laetitia a nommé la macro es donc es équivaut à Call es. Si la macro s'appelait Acces_Bouton tu aurais eu :
Code:
Private Sub TextBox1_Change()
Acces_Bouton
End Sub
etc...
Code:
Sub Acces_Bouton()'macro dans user
If TextBox1 <> "" And TextBox2 <> "" And TextBox3 <> "" Then
     CommandButton1.Enabled = True
Else
     CommandButton1.Enabled = False
End If
End Sub
 

tuonoman77

XLDnaute Nouveau
Bonjour à tous,

dans l'exemple de Leatitia et robert je ne comprend pas doit être positionné se bout de code

VB:
Sub Acces_Bouton()'macro dans user
If TextBox1 <> "" And TextBox2 <> "" And TextBox3 <> "" Then
     CommandButton1.Enabled = True
Else
     CommandButton1.Enabled = False
End If
End Sub

Pouvez vous m'aider ?
 

Discussions similaires

Statistiques des forums

Discussions
312 677
Messages
2 090 805
Membres
104 671
dernier inscrit
Guilbry