XL 2016 CSV en vrac, reconstitution

rapsch

XLDnaute Nouveau
Hello,
Nous avons récupéré un Excel ne CSV avec les données affichés ainsi
Titre ATitre B
Je soutiens
ExcelDownloads
Je soutiens
Excel
Downloads

Voilà !!
L'idée est de reconstituer dans deux cellules la phrase Je soutiens Excel Downloads l'une sous l'autre.
Merci pour votre aide.
 

Orson83

XLDnaute Impliqué
Bonjour rapsh, bhbh, le forum,
Dans un premier temps, ne serait-il pas possible que ton fichier csv ou txt soit formaté avec des tabulations ?
Voir l'exemple en PJ (fichier en .txt à ouvrir avec Excel ou à renommer en .csv).
 

Pièces jointes

  • exemple1.txt
    73 bytes · Affichages: 4

dysorthographie

XLDnaute Accro
Bonjour,
j'imagine que ton CSV provient à l'origine d'une source contenant des retour ligne dans les cellule!
vue que personne chez Microsoft n'a pensé faire le distinguo entre Retour chariot VbCr et retour à la ligne VbCrLf Qui n'est autre qu'un Retour Chariot VbCr + un fin de ligne VbLf!

dans ce cas tu es obligé de traiter ton CSV par Macro!
VB:
Sub ImporCsv()
Const Separateur = ";"
dim Fichier as string:Fichier =Environ("Temp") & "\test.csv"
PressePapier = Replace(Replace(Replace(Replace(LireTxt(Fichier ), vbCrLf, "®"), vbCr, "©"), "®", vbCrLf), Separateur, vbTab)
Sheets("Feuil1").Range("A1").PasteSpecial xlAll
Sheets("Feuil1").Cells.Replace What:="©", Replacement:=Chr(10), LookAt:=xlPart, _
        SearchOrder:=xlByRows, MatchCase:=False, SearchFormat:=False, _
        ReplaceFormat:=False
End Sub

Public Function LireTxt(Fichier As String) As String
With CreateObject("Scripting.FileSystemObject")
    With .OpenTextFile(Fichier)
        LireTxt = .ReadAll
        .Close
    End With
End With
End Function

Public Sub ClearPressePapier()
With CreateObject("htmlfile").parentwindow.clipboardData.clearData("Text"): End With

End Sub
Public Property Let PressePapier(valeur)
With CreateObject("htmlfile").parentwindow.clipboardData.SetData("Text", valeur): End With
End Property
 
Public Property Get PressePapier()
PressePapier = CreateObject("htmlfile").parentwindow.clipboardData.GetData("TEXT")
End Property
 
Dernière édition:

Discussions similaires

Statistiques des forums

Discussions
312 165
Messages
2 085 880
Membres
103 009
dernier inscrit
dede972