1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45
|
Sub conv_jjmmaaaa_to_jjmmaaaa()
'conversion d'un format JJ/MM/AAAA à un format JJMMAAAA
'Se placer sur la première cellule de la colonne des dates JJ/MM/AAAA
'Prévoir 6 colonnes de vide à droite
'conversion:
While ActiveCell <> ""
ActiveCell.Offset(0, 1).FormulaR1C1 = "=DAY(RC[-1])"
ActiveCell.Offset(0, 2).FormulaR1C1 = "=MONTH(RC[-2])"
ActiveCell.Offset(0, 3).FormulaR1C1 = "=YEAR(RC[-3])"
ActiveCell.Offset(0, 1).Select
cell1 = ActiveCell.Address
cell2 = ActiveCell.Offset(0, 2).Address
Range(cell1, cell2).Select
Selection.Copy
ActiveCell.Offset(0, 3).Select
Selection.PasteSpecial Paste:=xlValues, Operation:=xlNone, SkipBlanks:=False, Transpose:=False
'ajout d'un zéro si le jour est inférieur à 10
ActiveCell.Offset(0, -3).Select
Selection.NumberFormat = "General"
ActiveCell.FormulaR1C1 = "=IF(RC[3]<10,""0""&RC[3],RC[3])"
'ajout d'un zéro si le mois est inférieur à 10
ActiveCell.Offset(0, 1).Select
Selection.NumberFormat = "General"
ActiveCell.FormulaR1C1 = "=IF(RC[3]<10,""0""&RC[3],RC[3])"
'refaisons un copier-coller
Range(cell1, cell2).Select
Selection.Copy
ActiveCell.Offset(0, 3).Select
Selection.PasteSpecial Paste:=xlValues, Operation:=xlNone, SkipBlanks:=False, Transpose:=False
'concaténons joyeusement tout ça !
ActiveCell.Offset(0, -3).Select
ActiveCell.FormulaR1C1 = "=CONCATENATE(RC[3],RC[4],RC[5])"
ActiveCell.Offset(1, -1).Select
Wend
End Sub |
Partager