Bonjour,
Après de nombre recherche sur internet j'ai réussi à "fabriquer" un code VBA pour transformer une série de chiffre en date :
Private Sub Worksheet_Change(ByVal Target As Range)
'---Convertit un nombre de 7 ou 8 chiffres en date---
Dim d As Variant
Set Target = Target.Cells(1, 1)
d = Target.Value2
ActiveSheet.Unprotect "123"
If Not (d Like "#######" Or d Like "########") Then Exit Sub
d = Left(Right(d, 6), 2) & "/" & Left(Right(0 & d, 8), 2) & "/" & Right(d, 4) 'mm/dd/yyyy'
d = ExecuteExcel4Macro("DATEVALUE(""" & d & """)")
If IsNumeric(d) Then
Target.NumberFormat = "dd/mm/yyyy"
Target = d
Else
Target.NumberFormat = "General"
End If
ActiveSheet.Protect "123"
End Sub
J'aimerais que ce code ne s'applique qu'aux cellules C3 à C14.
Quelques peut-il m'aider pour les dernières modifications ?
Merci beaucoup
Après de nombre recherche sur internet j'ai réussi à "fabriquer" un code VBA pour transformer une série de chiffre en date :
Private Sub Worksheet_Change(ByVal Target As Range)
'---Convertit un nombre de 7 ou 8 chiffres en date---
Dim d As Variant
Set Target = Target.Cells(1, 1)
d = Target.Value2
ActiveSheet.Unprotect "123"
If Not (d Like "#######" Or d Like "########") Then Exit Sub
d = Left(Right(d, 6), 2) & "/" & Left(Right(0 & d, 8), 2) & "/" & Right(d, 4) 'mm/dd/yyyy'
d = ExecuteExcel4Macro("DATEVALUE(""" & d & """)")
If IsNumeric(d) Then
Target.NumberFormat = "dd/mm/yyyy"
Target = d
Else
Target.NumberFormat = "General"
End If
ActiveSheet.Protect "123"
End Sub
J'aimerais que ce code ne s'applique qu'aux cellules C3 à C14.
Quelques peut-il m'aider pour les dernières modifications ?
Merci beaucoup