Convertir en UTF8 apres macro une macro de csv en xlsx
j
Bonjour à vous tous,
Grace à ce forum j'aiu réussi à trouver mon bonheur pour convertir un CSV en XLSX.
Sauf que maintenant j'ai pleins de caractères spéciaux suite à la conversion.
J'ai essayé pas mal de formules mais je n'arrive pas à ajouter une couche suplémentaire pour ne plus avoir de caractères spéciaux comme : Développement au lieu de Développement
voilà mon code :
Sub Macro1()
Dim CH As String 'déclare la variable CH (CHemin d'accès)
Dim F As String 'déclare la variable F (Fichier)
Dim N As String 'déclare la variable N (Nom)
CH = "D:\Sites\agora\testformule\" 'définit le chemin d'accès CH (à adapter à ton cas)
F = Dir(CH & "*.csv") 'définit le premier fichier .csv du dossier ayant CH comme chemin d'accès
Do While F <> "" 'boucle tant qu'il existe des fichiers .csv
N = Replace(F, ".csv", "") 'définit le nom N (le nom du fichier sans l'extension)
Workbooks.Open CH & F 'ouvre le fichier F
'Convertis le contenu (Excel regroupe tout dans la colonne A, il faut donc lui redonner sa forme d'origine)
Columns("A:A").Select
Selection.TextToColumns Destination:=Range("A1"), DataType:=xlDelimited, _
TextQualifier:=xlDoubleQuote, ConsecutiveDelimiter:=False, Tab:=True, _
Semicolon:=True, Comma:=False, Space:=False, 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)), TrailingMinusNumbers:=True
ActiveWorkbook.SaveAs CH & N, FileFormat:=51 'enregistre le fichier au format Excel
ActiveWorkbook.Close 'ferme le fichier
F = Dir 'définit le prochain fichier .csv
Loop 'boucle
End Sub
Merci pour votre aide.
T
Bonjour,
Postes un fichier exemple avec de ce que tu as et ce que tu souhaites avoir !
j
Je mets en PJ mes 3 fichiers:
Le fichier avec la macro
le fichier csv
Le fichier excel que j'ai via ma macro :
ou les caractères accentués donnent Prénom au lieu de Prénom
Et enfin le fichier excel que j'aimerai avoir sans mes caractères spéciaux.
Un grand merci à vous