[COLOR="Blue"]Private Const[/COLOR] csvSeparator = ";"
[COLOR="Blue"]Sub [/COLOR]test()
[COLOR="Blue"]Dim [/COLOR]myFso, csvFile, csvFileName [COLOR="Blue"]As String[/COLOR], i [COLOR="Blue"]As Integer[/COLOR], j [COLOR="Blue"]As Integer[/COLOR], csvLine [COLOR="Blue"]As String[/COLOR]
[COLOR="Green"]'récupérer le nom du fichier à créer[/COLOR]
[COLOR="Blue"]Do[/COLOR]
csvFileName = Application.GetSaveAsFilename(InitialFileName:=ThisWorkbook.Name & ".csv", filefilter:="Fichier CSV, *.csv")
[COLOR="Blue"]Loop Until[/COLOR] UCase(csvFileName) <> "FAUX"
[COLOR="Green"]'créer le fichier[/COLOR]
[COLOR="Blue"]Set[/COLOR] myFso = CreateObject("Scripting.FileSystemObject")
[COLOR="Blue"]Set[/COLOR] csvFile = myFso.CreateTextFile(Filename:=csvFileName, overwrite:=[COLOR="Blue"]True[/COLOR])
[COLOR="Blue"]With [/COLOR]ThisWorkbook.Sheets("[B][COLOR="Red"]Feuil1[/COLOR][/B]")
[COLOR="Green"]'boucler sur toutes les lignes[/COLOR]
[COLOR="Blue"]For [/COLOR]i = 1 [COLOR="Blue"]To [/COLOR].Cells(.Rows.Count, 1).End(xlUp).Row
[COLOR="Green"]'initialiser la ligne CSV[/COLOR]
csvLine = vbNullString
[COLOR="Green"]'boucler sur les 4 colonnes[/COLOR]
[COLOR="Blue"]For [/COLOR]j = 1 [COLOR="Blue"]To [/COLOR]4
[COLOR="Green"]'créer la ligne[/COLOR]
csvLine = csvLine & IIf(csvLine = vbNullString, vbNullString, csvSeparator) & .Cells(i, j).Text
[COLOR="Blue"]Next [/COLOR]j
[COLOR="Green"]'écrire la ligne dans le fichier[/COLOR]
csvFile.WriteLine csvLine
[COLOR="Blue"]Next [/COLOR]i
[COLOR="Blue"]End With[/COLOR]
[COLOR="Green"]'fermer le fichier[/COLOR]
csvFile.Close
[COLOR="Blue"]Set [/COLOR]csvFile = [COLOR="Blue"]Nothing[/COLOR]
[COLOR="Blue"]Set [/COLOR]myFso = [COLOR="Blue"]Nothing[/COLOR]
[COLOR="Blue"]End Sub[/COLOR]