Date for vba excel

Résolu/Fermé
max850 Messages postés 305 Date d'inscription dimanche 10 janvier 2016 Statut Membre Dernière intervention 4 janvier 2020 - 18 févr. 2016 à 12:16
max850 Messages postés 305 Date d'inscription dimanche 10 janvier 2016 Statut Membre Dernière intervention 4 janvier 2020 - 18 févr. 2016 à 21:22
Bonjour,

je ne parviens pas à vérifier si les données entrées dans la textbox3 sont une date au bon format ni à vérifier si la date entrée est égale ou différente de celle du jour

pouvez vous m'aider ?

merci

ci-joint mon fichier

https://www.cjoint.com/c/FBsllLgxxuv

A voir également:

2 réponses

f894009 Messages postés 17185 Date d'inscription dimanche 25 novembre 2007 Statut Membre Dernière intervention 15 avril 2024 1 701
18 févr. 2016 à 15:52
Bonjour,

Date: jj/mm/aaaa
Now: jj/mm/aa hh:mm:ss

Private Sub TextBox3_exit(ByVal cancel As MSForms.ReturnBoolean)
    Dim datepiece
    
    datepiece = CDate(TextBox3.Value)
     If Not IsDate(datepiece) Then
          MsgBox "Format date pas bon", vbExclamation + vbDefaultButton2, "Date de la Pièce"
          datepiece = DateValue(Date)
          'cancel = True
        ElseIf datepiece > DateValue(Date) Then
          MsgBox "Date incompatible", vbExclamation + vbDefaultButton2, "Date de la Pièce"
          datepiece = DateValue(Date)
          cancel = True
     End If
End Sub
0
max850 Messages postés 305 Date d'inscription dimanche 10 janvier 2016 Statut Membre Dernière intervention 4 janvier 2020 3
18 févr. 2016 à 16:57
Bonjour f894009

merci pour ta solution et j'ai vu où était mon souci (entre "date" et "now").

je venais d'en trouver une autre qui fonctionne également
quelle différence y a t il entre beforeUpdate et exit ?



Private Sub TextBox3_BeforeUpdate(ByVal Cancel As MSForms.ReturnBoolean)
TextBox3.Value = Format(TextBox3.Value, "dd/mm/yyyy")
If Not IsDate(Me.TextBox3) Then
MsgBox "Erreur de saisie", vbExclamation + vbDefaultButton2, "Date de la Pièce"
Cancel = True
ElseIf CDate(TextBox3.Value) > Date Then
MsgBox "Date invalide", vbExclamation + vbDefaultButton2, "Date de la Pièce"
TextBox3 = ""
Cancel = True
End If

End Sub
0
f894009 Messages postés 17185 Date d'inscription dimanche 25 novembre 2007 Statut Membre Dernière intervention 15 avril 2024 1 701
18 févr. 2016 à 19:12
Re,

ces evenements s'exectutent dans cet ordre et la ou il y a Cancel posibilite de faire des test et ne pas sortir de la textbox

Private Sub TextBox2_BeforeUpdate(ByVal Cancel As MSForms.ReturnBoolean)

Private Sub TextBox2_AfterUpdate()

Private Sub TextBox2_Exit(ByVal Cancel As MSForms.ReturnBoolean)
0
max850 Messages postés 305 Date d'inscription dimanche 10 janvier 2016 Statut Membre Dernière intervention 4 janvier 2020 3 > f894009 Messages postés 17185 Date d'inscription dimanche 25 novembre 2007 Statut Membre Dernière intervention 15 avril 2024
18 févr. 2016 à 21:22
ok merci f894009
Bonne soirée
0