Re,
Dans ce cas et en repartant de ce qu'à donné Jean-Eric que je salue
En pensant à un certain nombre de saisies (je ne sais pas s'il faut)
Private Sub Worksheet_Change(ByVal Target As Range)
Dim sDate As String, ValDate As Variant
If Not Intersect(Target, Me.Range("H2:H3")) Is Nothing And Target.Count = 1 Then
' Récupérer la valuer
ValDate = Target.Value2
If IsNumeric(ValDate) Then
' Selon la sasie effectuée
Select Case Len(ValDate)
Case 5 ' format jmmaa
sDate = "0" & Left(ValDate, 1) & "/" & Mid(ValDate, 2, 2) & "/" & Right(ValDate, 2)
Case 6 ' format jjmmaa
sDate = Left(ValDate, 2) & "/" & Mid(ValDate, 3, 2) & "/" & Right(ValDate, 2)
Case 7 ' format jmmaaaa
sDate = Left(ValDate, 1) & "/" & Mid(ValDate, 2, 2) & "/" & Right(ValDate, 4)
Case 8 ' format jjmmaaa
sDate = Left(ValDate, 2) & "/" & Mid(ValDate, 3, 2) & "/" & Right(ValDate, 4)
End Select
Application.EnableEvents = False
Target.Value = CDate(sDate)
Target.NumberFormat = "dd mmm yyyy"
Application.EnableEvents = True
End If
End If
End Sub
A+