Bonjour,

Dans un formulaire, j'ai un DTPicker. Je renseigne une table avec la date récupérée de ce DTPicker avec d'autres informations. Pour l'enregistrement, il n'y a aucun problème, la date est enregistrée dans le bon format (Date, abrégé).
Je voudrais avant l'enregistrement savoir si la date existe déjà (à savoir que pour la même date, j'enregistre plusieurs informations).
J'ai donc fait ce bout de programme en VBA :
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
6
7
8
9
10
Dim msg As String
Dim rst As Recordset
Set rst = CurrentDb.OpenRecordset("Tbl_enr", dbOpenDynaset) 'dbOpenDynaset   dbOpenSnapshot
rst.FindFirst ("Date=" & Me.Choix_date)
If Not rst.NoMatch Then
    msg = MsgBox("Date existante", vbCritical)
    Set rst = Nothing
    Exit Sub
End If
Set rst = Nothing
Me.Choix_date étant le DTPicker.
Mon problème est qu'il ne voit jamais la date qui est pourtant dans la table.
Dans le doute, j'ai essayé :
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
a = CDate(Format(Me.Choix_date, "dd/mm/yyyy"))
rst.FindFirst ("Date=" & a)
pour voir si c'était à cause du format, mais rien à faire, je ne parviens pas à faire le test de la présence de la date dans la table.
Si je fais le test sur un autre champ de la table qui n'est pas une date, le code fonctionne.

Quelqu'un a-t-il une idée de ce qui cloche dans le code ?
Merci

@+++