Problème format da date après importation csv

robby98800

XLDnaute Nouveau
Bonjour à tous,

alors voilà j'ai un souci que je n'arrive pas à comprendre. J'importe un fichier .csv qui comporte sur la première colonne des dates comme celle-ci : 11/03/2012 (soit 11 Mars 2012).
Quand le fichier est importé dans un nouveau classeur excel la date devient : 03/11/2012.

En fait je sélectionne les données qui sont comprises entre deux dates que l'utilisateur peut choisir grâce a un calendrier DTPicker dans une userform. Je ne sais pas si le souci pourrait venir d'ici, parce que le calendrier est lui au "bon format" c'est à dire 11/03/2012 (11 Mars 2012)

Je vous montre le code que j'utilise pour importer le fichier csv. (Celui ci doit etre compris dans le même dossier que le fichier excel ou l'on copie les données).

Code:
Dim derligne1 As Long
Dim derligne2 As Long, derligne3 As Long, derligne4 As Long, derligne5 As Long, derligne6 As Byte
Dim tablo1 As Variant, tablo2 As Variant, tablo3 As Variant
Dim ecart_date As Integer
Dim I As Long, k As Long, u As Byte, f As Long
Dim Tablo() As Variant, CelSource As Variant
Dim Cel As Range
Dim ladate1 As Date, ladate2 As Date
Dim Source
Dim Temp As String
Dim TabloOK  As Boolean
Dim fs

'Importer les données de plusieurs classeurs


Application.ScreenUpdating = False
Set fs = CreateObject("Scripting.FileSystemObject")

TabloOK = False
  derligne2 = Sheets("releve_erreur").Range("A" & Rows.Count).End(xlUp)(2).Row 'definit la derniere ligne de la colonne A
  ladate1 = DTPicker1.Value
  ladate2 = DTPicker2.Value
Temp = Dir(ActiveWorkbook.Path & "\*.csv")
Do While Temp <> ""
    Workbooks.Open Filename:=ThisWorkbook.Path & "\" & Temp
      With Sheets(1)
        derligne3 = Cells(Rows.Count, 1).End(xlUp).Row
        For Each Cel In .Range("A2:A" & derligne3)
        CelSource = Split(Cel.Value, ";")
          If Cel = ";;;;" Then GoTo suite:
          If CelSource(0) >= ladate1 Then
          If CelSource(0) <= ladate2 Then
          TabloOK = True
          f = f + 1
            ReDim Preserve Tablo(1 To 5, 1 To f)
            Tablo(1, f) = CelSource(0)
            Tablo(2, f) = CelSource(1)
            Tablo(3, f) = CelSource(2)
            Tablo(4, f) = CelSource(3)
            Tablo(5, f) = CelSource(4)
          End If
          End If
        Next Cel
      End With
suite:
  ActiveWindow.Close SaveChanges:=False
  If TabloOK = True Then Range(Cells(derligne2, 1), Cells(derligne2 + f - 1, 5)).Value = _
                      Application.WorksheetFunction.Transpose(Tablo)
  Temp = Dir
Loop
MsgBox "Les données sont transférées"
Application.ScreenUpdating = True

Je met en pièce jointe le fichier excel et le fichier csv. Pour faire l'importation les deux doivent être dans le meme dossier.


Merci de votre aide!

Robin
 

Pièces jointes

  • ex.zip
    283.1 KB · Affichages: 28
  • ex.zip
    283.1 KB · Affichages: 22
  • ex.zip
    283.1 KB · Affichages: 18

Discussions similaires

Réponses
2
Affichages
151
Réponses
12
Affichages
249

Statistiques des forums

Discussions
312 209
Messages
2 086 271
Membres
103 168
dernier inscrit
isidore33