Bonjour,

J'ai une macro vba à partir de laquelle j'importe des données d'un autre fichier. Je les mets automatiquement en forme via un text to columns, mais parmi ces données, j'ai une colonne date.
Dans cette colonne date j'ai certaines cellule qui sont de la forme "dd/mm/yyyy" et d'autres "dd/mm/yy". Excel me propose pour les cellules en "dd/mm/yy" de convertir "xx to 20xx" ou "xx to 19xx" sachant que toutes les date doivent etre en 20xx, j'ai d'abord pensé à une concaténation, du jour, du mois et de l'année...mais çà ne marche pas.

Pouvez-vous m'aider?

Merci d'avance,

Code : Sélectionner tout - Visualiser dans une fenêtre à part
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
Workbooks ("Fichier1").Activate
DernLigne_Fichier1 = Range("A65000").End(xlUp).Row
 
Range(Cells(2, 1), Cells(DernLigne_Fichier1, 1)).Select
Selection.Copy
 
Workbooks("Fichier1").).Activate
Cells(2, 1).Select
    Selection.PasteSpecial Paste:=xlPasteValues, Operation:=xlNone, SkipBlanks _
        :=False, Transpose:=False
    Application.CutCopyMode = False
    Selection.TextToColumns Destination:=Range("A2"), DataType:=xlDelimited, _
        TextQualifier:=xlDoubleQuote, ConsecutiveDelimiter:=True, Tab:=True, _
        Semicolon:=False, Comma:=False, Space:=True, Other:=False, FieldInfo _
        :=Array(Array(1, 1), Array(2, 1), Array(3, 1), Array(4, 1), Array(5, 1), Array(6, 1), _
        Array(7, 1), Array(8, 1), Array(9, 1), Array(10, 1), Array(11, 1), Array(12, 1), Array(13, 1 _
        )), TrailingMinusNumbers:=True
 
 
 
 
 
PremiereLigne_Fichier2 = Range("A1").End(xlDown).Row
DernLigne_Fichier2 = Range("A65000").End(xlUp).Row
 
For i = PremiereLigne_Fichier2 + 1 To DernLigne_Fichier2
 
    Jour = Left(Cells(i, 4), 2)
    Mois = Mid(Cells(i, 4), 4, 2)
    Année = Right(Cells(i, 4), 2)
    Date_Jour = Jour & "/" & Mois & "/" & "20" & Année
 
 
   Cells(i, 4) = Format(Date_Jour, "dd/mm/yyyy")
 
Next i