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

XL 2016 probleme sur un code : enregistrement d'un fichier excel en csv avec séparateur ;

Excelo92

XLDnaute Nouveau
Bonjour,
J'ai une erreur sur mon code mais je n'arive pas à comprendre d'ou cela peut provenir (voir en gras rouge)
Le code consiste à enregistrer une feuille excel au format csv avec le séparateur ";" dans le répertoire "C:\Import variable Talentia\Ass maternelle\"

Sub IMPDV()

Sheets("IMPDV").Select

XlsToTxt Sheets("IMPDV"), "C:\Import variable Talentia\Ass maternelle\IMPDV.csv", ";"

Name "C:\Import variable Talentia\Ass maternelle\IMPDV.csv" As "C:\Import variable Talentia\Ass maternelle\" & Workbooks("IMPDVASSMAT.xlsm").Sheets("à coller").Range("AG1").Value & ".csv"

End Sub

Public Sub XlsToTxt(sheetExport As Worksheet, Optional exportFileName As String, Optional csvDelimiter As String = ";")
Dim myFso As Object, csvFile As Object, I As Integer, j As Integer, csvLine As String

If exportFileName = Empty Then

Do
exportFileName = Application.GetSaveAsFilename(InitialFileName:=sheetExport.Name & ".csv", filefilter:="Fichier CSV, *.csv")
Loop Until UCase(exportFileName) <> "FAUX"
End If

Set myFso = CreateObject("Scripting.FileSystemObject")
Set csvFile = myFso.CreateTextFile(Filename:=exportFileName, overwrite:=True)

With sheetExport

For I = 1 To .Cells.SpecialCells(xlCellTypeLastCell).Row

csvLine = vbNullString

For j = 1 To .Cells.SpecialCells(xlCellTypeLastCell).Column

csvLine = csvLine & .Cells(I, j).Text & csvDelimiter
Next j
csvLine = Left(csvLine, Len(csvLine) - Len(csvDelimiter))

csvFile.WriteLine csvLine
Next I
End With

csvFile.Close
Set csvFile = Nothing: Set myFso = Nothing
End Sub


Auriez vous une idée de ce qui bloque sur le code?
Merci pour votre aide
Cordialement,
 
Les cookies sont requis pour utiliser ce site. Vous devez les accepter pour continuer à utiliser le site. En savoir plus…