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 !

zephir94

XLDnaute Impliqué
Bonjour à tous,


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
 
Re : comparer deux dates

Bonjour zephir,

essaie en remplaçant: (TextBox2.Text)

par: (TextBox2)

mettre également ces deux lignes en une seule
If IsDate(TextBox2.Text) > Date Then
MsgBox " hahaha"


If IsDate(TextBox2.Text) > Date Then MsgBox " hahaha"


et supprimer:
Else
End If


à+
Philippe
 
Dernière édition:
Re : comparer deux dates

Bonsir zephir94, le Forum,

Peut-être:
Code:
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

Ouuups: Bonsoir phlaurent55 🙂

@+ 😎
 
Re : comparer deux dates

Bonsoir zephir94, le Forum

Avec ceci, si le format Date correspond:
Code:
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")

@+😎
 
Dernière édition:
Re : comparer deux dates

Bonsoir zephir94, le Forum

Avec ceci, si le format Date correspond:
Code:
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 !
 
Dernière édition:
Re : comparer deux dates

C'est bon j'ai trouvé la solution j'ai fait :
Code:
 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
 
- 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
15
Affichages
659
Réponses
10
Affichages
634
  • Question Question
Microsoft 365 Problème de date
Réponses
5
Affichages
332
  • Question Question
Microsoft 365 Contrôle sur date
Réponses
8
Affichages
383
Réponses
2
Affichages
386
Retour