Bonsoir Manhalo, bonsoir le forum,
je ne sais pas comment tu fais mais si je tape une date avec des points (22.02.2022 par exemple), j'ai systématiquement une erreur ! J'ai donc adapté avec 22/02/2022.
Ce qui est fou c'est que s'il manque un chiffre à l'année (22/02/202 par exemple), ce ne soit pas la ligne Vdate = DateValue(Rep) qui plante mais plutôt Sheets(1).Range("G11") = Vdate. Là j'avoue que ça reste un mystère pour moi ?!... Visiblement Vdate = DateValue(Rep) ne génère pas d'erreur dans ce cas.
Peut-être une manière de contourner le problème :
Sub Macro1()
Dim FlgOK As Boolean, Vdate As Date, Rep As String
Do
ici:
Rep = InputBox("Définir une date pour la livraison" & Chr(10) & Chr(10) & "JJ/MM/AAAA", "IMPORTANT")
If Rep = "" Then
MsgBox "Annulé"
Exit Sub
End If
If Len(Rep) < 10 Then GoTo ici
On Error Resume Next
Vdate = CDate(Rep)
FlgOK = (Err.Number = 0)
On Error GoTo 0
Loop Until FlgOK = True
Sheets(1).Range("G11") = Vdate
Sheets(1).Range("G11").NumberFormat = "dd mmmm yyyy"
End Sub