J'ai une colonne de dates qui sont stockées au format JJ-MM-AAAA. Je les parcours en boucle avec la fonction cdate de VBA pour les convertir en valeurs. Cependant, si le jour du mois est égal ou inférieur à 12, Cdate interprète la date au format JJ-MM-AAAA. Quel est le moyen le plus pratique de contourner ce problème ?
Réponse
Trop de publicités?J'utiliserais le DateSerial
Essayez ceci :
Sub ConvertDate()
Dim datecell As Variant, i As Long
With Workbooks("book1").Sheets(1)
For i = 1 To .Cells(Rows.Count, 1).End(xlUp).Row
datecell = Split(.Range("A" & i), "/")
.Range("B" & i) = DateSerial(datecell(2), datecell(1), datecell(0))
Next i
End With
End Sub
Cela suppose que votre classeur s'appelle "Book1" et que les valeurs de la date se trouvent dans la colonne A. Les résultats seront écrits dans la colonne B.