Bonjour Manu31, galopin01, la communauté,
la difficulté est de vérifier la date,
si mes variables sont
an = 2001
m = 2
j = 29
à tester,
Sub TestDate()
Dim t As String
an = 2001
m = 2
j = 29
VraiDate = DateSerial(an, m, j)
FausseDate = "" & an & "-" & m & "-" & j
dt = "an - " & an & Chr(10) & "mois - " & m & Chr(10) & "jour - " & j & Chr(10)
MsgBox dt & Chr(10) & "VraiDate - " & VraiDate & Chr(10) & "FausseDate - " & FausseDate
If IsDate(FausseDate) Then MsgBox "FausseDate - " & FausseDate
If IsDate(VraiDate) Then MsgBox "VraiDate - " & VraiDate
'à cette étape il faudrait afficher un 2èm UserForm
'avec la date inscrit par l'utilisateur, et un choix d'option pour la date avant ou après ou annulation pour revenir inscrire une date valide.
End Sub
End Sub
les 2 sont de vrai date, mais une est fausse.
la function IsDate est utile pour vérifier cette valeur, mais
les DT Picker et autres calendriers assimilés sont très utiles pour éviter tout ces test.