Conditions dans TExtbox

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 !

OUIZEMANN

XLDnaute Junior
Bonjour à tous,
Ravi de vous retrouver.
J'ai encore besoin de votre aide.
Je voudrais dans l'userform joint pouvoir mettre des conditions dans les textbox.

1/ je souhaite limiter la saisie de 0 à 4 et exclure les autres chiffres. Ma macro ne fonctionne que pour le 1er textbox 2. Comment faire pour les 33 autres ?

2/ je souhaite que les textbox avec le chiffre 4 soient en rouge. J'ai trouvé qu'une partie de la macro, car une fois que le textbox est rouge, il reste tout le temps à cette couleur au lieu de revenir à blanc.

Par avance, merci de votre aide.

A bientôt...🙂
 
Dernière édition:
Re : Conditions dans TExtbox

Bonjour

as tu essayé en ajoutant un else pour remettre la couleur d'origine
VB:
Private Sub TextBox2_Change()
If TextBox2.Value = 4 Then
  TextBox2.BackColor = &HFF&
Else
  TextBox2.BackColor = &H00&
Endif
End Sub
[ /highlight]
 
Re : Conditions dans TExtbox

Bonsoir 🙂,
Tu m'as l'air un peu farce 😛...
1)
Code:
For i = 2 To 51
If Controls("TextBox" & i) > 4 And Controls("TextBox" & i) <> "" Then
MsgBox "numéro non valide, Saisissez des nombres entiers de 0 à 4 ", vbExclamation, _
    "Saisissez des nombres entiers de 0 à 4"
Exit For
End If
Next i
mais tu avais déjà ce code pour récupérer les données de la feuille 🙄...
2)
Code:
Private Sub TextBox2_Change()
If TextBox2.Value = 4 Then TextBox2.ForeColor = &HFF& Else TextBox2.ForeColor = &H80000012
End Sub
mais si tu ne connais même pas Else, je te conseillerais plutôt de te remettre aux légos 😀...
Bonne soirée 😎
Ajout : Bonsoir Tdft
 
Dernière édition:
Re : Conditions dans TExtbox

Pour la couleur çà marche super bien.
En revanche, j'ai un problème avec le point 1 (condition numérique de 0 à 4) : si je mets par exemple 5 dans la textbox 2, j'ai bien le message d'erreur, mais le 5 s'inscrit quand même dans la cellule. Aurais-je mis la formule au mauvais endroit ? Voici comment j'ai fait :

Private Sub CommandButton3_Click()

Dim I As Byte

For I = 2 To 10
If Controls("TextBox" & I) > 4 And Controls("TextBox" & I) <> "" Then
MsgBox "numéro non valide, Saisissez des nombres entiers de 0 à 4 ", vbExclamation, _
"Saisissez des nombres entiers de 0 à 4"
Exit For
End If
Next I

With ComboBox1
For I = 2 To 51
Sheets("EVALUATION_simplifiée").Cells(.List(.ListIndex, 1), I) = Controls("TextBox" & I)
Controls("TextBox" & I) = ""
Next I
.ListIndex = -1
End With
CommandButton3.Visible = False
CommandButton4.Visible = False
Label27.Caption = "mode : création"
initialisecombo

End Sub

Merci encore de votre aide.
 
Re : Conditions dans TExtbox

Bonjour

essaye avec
VB:
For I = 2 To 10
If Controls("TextBox" & I) > 4 And Controls("TextBox" & I) <> "" Then
MsgBox "numéro non valide, Saisissez des nombres entiers de 0 à 4 ", vbExclamation, "Saisissez des nombres entiers de 0 à 4"
Controls("TextBox" & I)="" ' pour le forcer à vide
Exit For
End If
Next I
 
- 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

Réponses
1
Affichages
205
Réponses
15
Affichages
279
  • Question Question
XL 2013 VBA Excel
Réponses
2
Affichages
638
Retour