essaye ca
Public Sub sauv()
Dim feuille As Worksheet
For I = 1 To ThisWorkbook.Worksheets.Count
Set feuille = Worksheets(I)
Open "c:\sauvcsv_" & I & ".csv" For Output As #1
J = 1
While feuille.Range("A" & J).Value <> Empty
K = 1
MaxK = K
While feuille.Cells(J, K).Value <> Empty Or K < MaxK
Ligne = Ligne & feuille.Cells(J, K).Value & ";"
MaxK = IIf(MaxK < K, K, MaxK)
K = K + 1
Wend
Print #1, Ligne
J = J + 1
Wend
Close #1
Next I
End Sub