Verifier valeur dans une textbox

  • Initiateur de la discussion Initiateur de la discussion creolia
  • 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 !

creolia

XLDnaute Impliqué
Bonjour je cherche une solution pour verifier si une textbox est renseigné avant de validé par un buttoncommand.

dans le cas ou il est pas renseignée un message demandant de renseignée avant de continuer s'affiche.
je tien à précisez que j'ai deja mis dans ma textbox une macro me permettant d'obliger à rentré la date.

merci pour votre aide
 
Re : Verifier valeur dans une textbox

re à tous j'ai trouvé ceci

Code:
Dim dat As Date
Cancel = True
On Error GoTo suite
dat = Format(CDate(T5.Text), "DD/MM/YYYY")
If Mid(T5.Text, 4, 2) > 12 Then GoTo suite
Cells(1, 1) = dat
MsgBox dat
Exit Sub
suite:
MsgBox "vous devez entrer une date valide": Unload UserForm1: UserForm1.Show

mais le format n'est pas convenable MOIS/ANNEE

j'ai donc tenté ceci et modifier cette ligne mais sa marche pas
Code:
dat = Format(CDate(T5.Text), "MM/YYYY")
 
Re : Verifier valeur dans une textbox

bonjour creolia
essai comme cela

Code:
Private Sub textbox1_KeyPress(ByVal KeyAscii As MSForms.ReturnInteger)
If InStr("0123456789/", Chr(KeyAscii)) = 0 Then KeyAscii = 0 'utiliser seulement ces caracteres
End Sub
Private Sub CommandButton1_Click()
If TextBox1 Like "##/##/####" Then MsgBox "ok" Else MsgBox "pas ok"
End Sub
 
Re : Verifier valeur dans une textbox

Bonjoue laetitia et merci pour ton aide je viens de trouver cette solution

Code:
If Not T5.Text Like "##/####" Then
        T5.BackColor = &HFF&
        MsgBox ("Informé les zones en rouge")
        Cancel = True
    End If
    


MsgBox "Produit Ajouter"

mais sa fonctionne pas top j'essais ta proposition
encore merci
 
Re : Verifier valeur dans une textbox

Re laetitia ta proposition est equivalente à la mienne.

je m'explique quand je valide mon button il me dit la valeur est pas bonne ok mais il continue à executer les macro qui suit alors que l'idéal serais de pas continué à executer les macro si la date est incorrecte



Code:
If T5 Like "##/####" Then MsgBox "ok" Else: MsgBox "pas ok"
MsgBox "pas ok"
macro1.ajout
MsgBox "ok"

peut t'on le faire comme ceci svp merci
 
Re : Verifier valeur dans une textbox

re, en developpant un peu dans ton cas!!!

Code:
Private Sub CommandButton1_Click()
If T5 Like "##/##/####" Then
Cells(1, 1) = CDate(T5.Value) 'important cdate
Else
MsgBox "vous devez entrer une date valide"
T5.SetFocus: T5 = ""
exit sub 'rajoute
End If
End Sub
 
Re : Verifier valeur dans une textbox

Re a tous au final j'ai pris un peu des 2 code de laetitia ce qui donne ceci et sa fonctionne parfaitement


Code:
If T5 Like "##/####" Then
Else
MsgBox "vous devez entrer une date valide"
Exit Sub 'rajoute
End If
MsgBox "ok"
 
Re : Verifier valeur dans une textbox

Bonjour

Une autre piste utiliser cancel qui bloque le curseur dans le textbox

Code:
Private Sub TextBox1_Exit(ByVal Cancel As MSForms.ReturnBoolean)
Cancel = False
If Not IsDate(TextBox1.Value) Then
Call MsgBox("Date non valide", vbInformation, Application.Name)
    TextBox1.Value = ""
    Cancel = True
End If
End Sub

Isdate fonctionne avec mm/aaaa mais ne fait pas la différence entre mm/aaaa et jj/mm/aaaaa, on peut contourner le problème en testant le nombre de caractères.

PS : Pour vérifier si le test fonctionne il faut entrer la valeur "14/2010"
JP
 
Dernière édition:
- 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

Retour