Ceci est une page optimisée pour les mobiles. Cliquez sur ce texte pour afficher la vraie page.

XL 2010 [Résolu] Formatage date différent

guy72

XLDnaute Impliqué
Bonjour,
Dans un fichier, dans la colonne A, j'ai la date et l'heure:
Time
2019/12/01 17:46
Etc ......




Dans le 2ème fichier, dans la colonne A
Colonne A>DateColonne B
20191201174600
Etc ......




Ma question est:
Est-il possible de transformer la date et l'heure de la colonne A du 1er fichier, et de les séparer au format de celui du 2ème fichier ??
Exemple:
2019/12/01 17:46 en
Colonne A> DateColonne B> Heure
20191201174600
Merci de votre aide



Cordialement
 
Dernière édition:

job75

XLDnaute Barbatruc
Bonjour guy72, le fil, le forum,

Merci, dans la macro il suffit d'ajouter l'ouverture et la copie du fichier CSV :
VB:
Sub Convertir()
Dim c As Range, tablo, i&, x$, dat As Date
Application.ScreenUpdating = False
With ActiveSheet
    .Cells.Delete 'RAZ
    Set c = .Cells(1)
    On Error Resume Next
    With Workbooks.Open(ThisWorkbook.Path & "\201912A.csv") 'ouverture du fichier CSV
        If Err Then MsgBox "Fichier CSV introuvable !", 48: Exit Sub
        .Sheets(1).UsedRange.Copy c 'copier-coller
        .Close
    End With
    On Error GoTo 0
    With .UsedRange
        .Replace ".", "." 'remplace le point par la virgule et convertit
        .Columns(1).EntireColumn.Insert 'insère une colonne
        .Cells(1, 0) = "Date"
        tablo = .Columns(0).Resize(, 2) 'matrice, plus rapide
        For i = 2 To UBound(tablo)
            x = tablo(i, 2)
            If IsDate(x) Then 'sécurité
                dat = CDate(x)
                tablo(i, 1) = Mid(dat, 7, 4) & Mid(dat, 4, 2) & Left(dat, 2)
                x = Right(dat, 8)
                If InStr(x, ":") = 0 Then x = 0
                x = Format(Replace(x, ":", ""), "000000")
                If Left(x, 1) = "0" Then x = "'" & x 'conserve les zéros non significatifs
                tablo(i, 2) = x
            End If
        Next
        With .Columns(0).Resize(, 2)
            .NumberFormat = "General" 'format Standard
            .Value = tablo 'restitution
        End With
    End With
    .Columns.AutoFit 'ajustement largeurs
End With
End Sub
Téléchargez et placez les fichiers joints dans le même dossier (le bureau).

Bonne journée.
 

Pièces jointes

  • Backup-B(3).zip
    30.4 KB · Affichages: 6

guy72

XLDnaute Impliqué
OK, impeccable, ça fonctionne, je ne sais pas ce que j'ai fait, j'ai du me mélanger dans les dossiers Excel et LibreOffice
Finalement, j'était avec la macro du fichier (Backup (2).xlm)
Merci encore
 
Dernière édition:

Discussions similaires

Réponses
5
Affichages
198
Les cookies sont requis pour utiliser ce site. Vous devez les accepter pour continuer à utiliser le site. En savoir plus…