Convertir xls en csv avec séparateur ";"
Fermé
greg
-
5 déc. 2011 à 17:06
Normad Messages postés 112 Date d'inscription dimanche 6 juin 2010 Statut Membre Dernière intervention 10 juin 2015 - 20 mai 2013 à 14:50
Normad Messages postés 112 Date d'inscription dimanche 6 juin 2010 Statut Membre Dernière intervention 10 juin 2015 - 20 mai 2013 à 14:50
A voir également:
- Convertir xls en csv avec séparateur ";"
- Convertir youtube en mp3 avec audacity - Guide
- Telecharger macro convertir chiffre en lettre excel - Télécharger - Tableur
- Convertir epub en kindle - Guide
- Convertir audio en texte word - Guide
- Xls viewer - Télécharger - Tableur
1 réponse
Normad
Messages postés
112
Date d'inscription
dimanche 6 juin 2010
Statut
Membre
Dernière intervention
10 juin 2015
39
20 mai 2013 à 14:50
20 mai 2013 à 14:50
Une solution de mon cru ci-dessous, mais qui nécessite de préciser la plage à enregistrer dans le fichier CSV
Private Declare Function GetTempPath Lib "kernel32" Alias _ "GetTempPathA" (ByVal nBufferLength As Long, ByVal lpBuffer _ As String) As Long Private Sub SaveAsCsv() Dim Value As Integer, Buf As String * 128, strligne() As String Dim Ligne As Long, Col As Integer, Fichier As String Dim f As Long, t As Variant, I As Integer, Test As String, Compte As Long On Error GoTo Fin Value = GetTempPath(128, Buf) 'Emplacement d'enregistrement (ici répertoire temporaire avec nom de fichier d'origine) Fichier = Left(Buf, Value) & "\" & ThisWorkbook.Name & ".csv" 'Plage à enregister pour l'exemple "A1:G20" ReDim strligne(20) 'nombre de lignes For Ligne = 1 To 20 'ligne 1 à 20 For Col = 1 To 7 'colonne A à G strligne(Ligne) = strligne(Ligne) & ";" & Cells(Ligne, Col) Next Col Next Ligne On Error Resume Next If Dir(Fichier) <> "" Then Kill Fichier If Dir(Fichier) <> "" Then MsgBox "Le fichier de résultat ne peut être remplacé car il est déjà ouvert", vbCritical Exit Sub End If On Error GoTo Fin f = FreeFile Open Fichier For Append As #f For Each t In strligne Print #f, CStr(t) Compte = Compte + 1 Next t Close #f MsgBox "Le fichier a bien été enregistré sous " & Fichier, vbInformation Exit Sub Fin: Close #f MsgBox Error End Sub