Je vous expose mon soucis, je veux tester la date saisie dans une textbox avec la date du jour.
Pour cela j'ai donc écris :
Code:
Sub TextBox2_Exit(ByVal Cancel As MSForms.ReturnBoolean)
If Not IsDate(TextBox2.Text) Then MsgBox "La saisie de la date est incorrecte"
If IsDate(TextBox2.Text) > Date Then
MsgBox " hahaha"
Else
End If
End Sub
La macro en pas à pas j'obtiens bien la date rentrée dans ma textbox2 et la date dans Date est bien celle de ce jour, mais malgré une date saisie supérieure à aujourd'hui la msgbox ne démarre pas ?????
Merci par avance pour m'expliquer pourquoi
Sub TextBox2_Exit(ByVal Cancel As MSForms.ReturnBoolean)
If Not IsDate(TextBox2.Text) Then MsgBox "La saisie de la date est incorrecte"
If CDate(TextBox2.Value) > Date Then
MsgBox " hahaha"
End If
End Sub
Non hélas cela n'a rien changé !
Que se soit .value, .text, ... en pas à pas j'ai bien 04/09/2014 de saisie et la date du jour 03/09/2014
et sa va directement à else !
Sub TextBox2_Exit(ByVal Cancel As MSForms.ReturnBoolean)
If Not IsDate(TextBox2) Then MsgBox "La saisie de la date est incorrecte"
If CDate(TextBox2.Value) > Format(Now, "dd/mm/yyyy") Then
MsgBox " hahaha"
End If
End Sub
EDIT: Je m'à trompé, c'est bien : Format(Now, "dd/mm/yyyy")
Non hélas cela n'a rien changé !
Que se soit .value, .text, ... en pas à pas j'ai bien 04/09/2014 de saisie et la date du jour 03/09/2014
et sa va directement à else !
Sub TextBox2_Exit(ByVal Cancel As MSForms.ReturnBoolean)
If Not IsDate(TextBox2) Then MsgBox "La saisie de la date est incorrecte"
If CDate(TextBox2.Value) > Format(Now, "dd/mm/yyyy") Then
MsgBox " hahaha"
End If
End Sub
EDIT: Je m'à trompé, c'est bien : Format(Now, "dd/mm/yyyy")
Merci ça fonctionne au poils ! mais j'ai du mal à me l'expliquer ????
car en pas à pas ça rajoute l'heure seulement !
par contre malgré else il ne stop pas la macro et passe à la textbox suivante donc j'ai ajouté un exit sub mais c'est pareille !
Private Sub TextBox2_Exit(ByVal Cancel As MSForms.ReturnBoolean)
If Not IsDate(TextBox2.Text) Then MsgBox "La saisie de la date est incorrecte"
If CDate(TextBox2.Value) > Format(Now, "dd/mm/yyyy") Then
MsgBox "hahaha"
[COLOR="#FF0000"]TextBox2.Value = ""[/COLOR]
Exit Sub
Else
End If
End Sub
et comme sur le commandbuton je vérifie que tous mes textbox soient bien remplies je retombe sur mes pieds !
Merci à vous tous