Sub CSVfichier()
Dim Tablot, iR%, i%, Tmp$, Sep$, X
X = FreeFile
With Sheets("CSVtest") 'On travaille directement sur la feuille export
Sep = ";"
iR = .Range("A65000").End(xlUp).Row 'Détermine la dernière ligne
Tablot = .Range("A1:AP" & iR).Value 'Mémorise le tout dans un tableau
'Open "CSVtest.csv" For Output As #X
Open Environ("userprofile") & "\DeskTop\CSVtest.csv" For Output As #X
For i = 1 To iR
' ta colonne 40 est vide forcement toute les lignes vont etre sautées '
If Tablot(i, 40) <> "" Then 'Recopie uniquement les lignes du tableau <> ""
Tmp = ""
For k = 1 To 40
Tmp = Tmp & CStr(Tablot(i, k)) & Sep
Next
Print #X, Tmp
End If
Next
Close #1
End With
MsgBox "CSvtest.csv > OK !", vbInformation + vbOKOnly, "EXPORT DONNEES CSVWYND"
End Sub